Content deleted Content added
GreenC bot (talk | contribs) Reformat 2 archive links. Wayback Medic 2.5 |
Oranjelo100 (talk | contribs) No edit summary |
||
Line 1:
In [[computer security]] '''alphanumeric shellcode''' is a [[shellcode]] that consists of or assembles itself on execution into entirely alphanumeric [[ASCII]] or [[Unicode]] characters such as 0-9, A-Z and a-z.<ref>{{cite web |last=SkyLined |url=http://www.phrack.org/issues.html?issue=57&id=15#article | title=Writing ia32 alphanumeric shellcodes |publisher=rix }}</ref><ref>{{cite web |last=SkyLined |url=http://www.phrack.org/issues.html?issue=61&id=11#article |title=Building IA32 'Unicode-Proof' shellcodes |publisher=obscou}}</ref> This type of encoding was created by [[Hacker (computer security)|hackers]] to hide working [[machine code]] inside what appears to be text. This can be useful to avoid detection of the code and to allow the code to pass through filters that scrub non-alphanumeric characters from strings (in part, such filters were a response to non-alphanumeric [[shellcode]] exploits). A similar type of encoding is called printable code and uses all [[Control character|printable]] characters (0-9, A-Z, a-z, !@#%^&*() etc...) It has been shown that it is possible to create shellcode that looks like normal text in English.<ref>{{cite web|url=http://www.cs.jhu.edu/~sam/ccs243-mason.pdf |author1=J. Mason |author2=S. Small |author3=F. Monrose |author4=G. MacManus |title=English shellcode |date=November 2009 |accessdate=2010-01-10}}</ref>
Writing alphanumeric or printable code requires good understanding of the [[instruction set architecture]] of the machine(s) on which the code is to be executed. It has been demonstrated that it is possible to write alphanumeric code that is executable on more than one machine.<ref>{{cite web |url=http://www.blackhatlibrary.net/Alphanumeric_shellcode |archive-url=https://web.archive.org/web/20120621124443/http://www.blackhatlibrary.net/Alphanumeric_shellcode |url-status=dead |archive-date=2012-06-21 | title=Multi-architecture (x86) and 64-bit alphanumeric shellcode explained |publisher=Blackhat Academy }}</ref>
|