An Apple user abroad , apply iCloud service , Rejected for incredible reasons .
Not only refuse , hers ID And it was sealed 6 Months .
All this , It's all because there's one in her name true.
and , It's really hard to solve this problem , The last employee on twitter 30 She was advised by an old programmer of three years ：
Solve this problem , The best way is to change the name …
One “true” Can interfere with Apple's system ? Users who step into this pit , Do you really have to change your name ?
“ Programming of life offender ” The embarrassment of
as everyone knows , In programming language ,true（ really ） Is a logical value , And “false” relative .true Represent in a programming statement 1 Or greater than 1 The number of , conversely false representative 0
And this unfortunate elder sister , be named as Rachel True, He is an American actor , model .
True As a surname is really rare , But this nice name is applying iCloud Time , It's a big problem .
She was typing in her name , In surnames t, No capitalization , Just hit it “true”.
And in Apple's results , You can see that the system is unable to true Assign to variable lastName.
in other words , It's supposed to be a string “true”, Directly recognized by the system as a Boolean value .
This is a mistake , cause iCloud The application process for is terminated .
also , according to Rachel True say , Apple also directly ID locking 6 Months .
The reason is not detailed , However, it is very likely that the system determines that the process is abnormal , To avoid malice SQL The defensive means of injection .
The past few days , She is constantly appealing to apple , and AppleSupport Circumflex , It takes an average of two or three hours a day .
But the problem can't be solved at all ,iCloud The service charge is still charged .
of course , No wonder apple ,true In the code , After all, it has been used for decades .
And we analyze it , In Apple's code , There is no mandatory entry for all lastName A mechanism for recognizing the value of as a string .
So solve this problem , Or put single quotation marks around the name when typing , Or you really have to change your name .
Those are better than “true” It's a difficult name
There is a classic joke circulating among programmers Bobby Tables.
The child's name is Robert’); DROP TABLE students, As a result, the student information of the whole school was lost .
Now you should understand how important it is to purify the input ??
Many people say that , This is the latest incident , It's a reality Bobby Tables.
except true, A lot of people's names have crashed the system .
such as , Have a surname Root Of , Have a surname Self Of , And, of course, surnames “Null” Of .
Null This surname is not uncommon , It's hard for many people to go out and even buy air tickets . Foreign media have reported on one Jennifer Null, I changed my family name after I got married , In order to use all kinds of services normally .
On twitter , There is a programmer from Holland , What's her last name van Os, When I graduated and started , Company use bash script Establish new employee account .
result , The name was not quoted during the operation , The space in the last name directly disrupts the whole script .
actually , This kind of problem , In addition to bring a lot of inconvenience to the user , There are also great security risks in the system security .
As many people remind you , Misidentification of each string , It's all available to hackers SQL Injection attack opportunity .
Fortunately , We Chinese users need not worry about this problem ~