"Серия статей по взлому, атакам и защите информации." - читать интересную книгу автора (Крис Касперски)

шэёЄpєъЎш■ 'CMP AX,000Dh', ъюЄюpр юсючэрўрхЄ "┼╤╦╚ яюы№чютрЄхы№ эрцры ENTER
Єю", яюёъюы№ъє '0Dh' ¤Єю ёъ¤э-ъюф ъыртш°ш Enter. ▌Єю фюыцэю с√Є№ уфх-Єю
эхфрыхъю.╒р!┬√ фюёЄрЄюўэю ёъюpю эрщфхЄх ёЄpюъє 'CS:0073 3D0D00 CMP AX,00D'
╥хяхp№ яєЄ№ фы  тчыюьр юЄъp√Є. Hю ┬└╠ H┼ ╥╨┼┴╙┼╥╤▀ ┬╤┼ ▌╥╬! {─хщёЄтшЄхы№эю,
яpхфырурхьр  ьхЄюфшър єцрёэю т√тюфшыр ьхэ  шч ёхс  ьрчрїшёЄъющ ёъыюээюёЄ№■ ъ
ыш°эхщ pрсюЄх, Єюээрь ьръєырЄpєp√ pрёяхўрЄръ... эхюсїюфшьюёЄ№■ яpшьхэхэш 
яштр, ъюуфр тёх ¤Єю ыюьрхЄё  _°ЄрЄэ√ьш_ яpшхьрьш схч юёюсюую эряp цхэш }.
─ы  ярpюы№э√х чр∙шЄ√, ъръ   єцх уютюpшы, тёхї т сюы№°хщ шыш ьхэ№°хщ ёЄхяхэш,
шёяюы№чєщЄх ёыхфє∙шщ эрт ч√трхь√щ ьэющ яpшхь: т эршсюы№°хь сыюъх яpюуpрьь√
(шёяюы№чєщЄх ърpЄє ярь Єш, ўЄю с√ єчэрЄ№ pрёяюы№цхэшх яpюуpрьь√) ш∙шЄх
яюёыхфютрЄхы№эюёЄ№ 'F3 A6', ўЄю яpхфёЄрты хЄ шэёЄpєъЎш■ REPZ CMPSB.
┬ ¤Єюь ёыєўрх ь√ яюыєўшь ╫┼╥█╨┼ рфpхёр ё шёъюь√ь ш шэёЄpєЎш ьш (pgsp =
PSP яpюуpрьь√):

Х pgsg:C6F9
Х pgsg:E5CA
Х pgsg:E63E
Х pgsg:EAB0

┬юЄ т√ уфх! ╥юы№ъю ўхЄ√pх... схуыю юёьюЄpшь ърцфє■ шч эшї: т√ єтшфшЄх ўЄю
тЄюpющ рфpхё ('E5CAh') - Єю ўЄю эрфю. ▌Єю ёpртэштр■∙шщ ьхїрэшчь шч яpюуpрьь√
1990 уюфр сюыхх шыш ьхэхх ъръ т 1987 т UMS (ш яютхp№Єх ьэх яюфюсэ√х
ьхїрэшчё√ шёяюы№чє■Єё  ш яю ёхщ фхэ№ /1996/)!

B9FFFF MOV CX,FFFF ; чряшё√трхь ьръёшєь т CX
F2AE REPNZ SCASB ; ¤Єю ёърэшpєхь ES:DI (юpшушэры№э√щ ярpюы№)
F7D1 NOT CX ; ъюышўхёЄтю ёшьтюыют т юpшэшэры№эюь ярpюых
2BF9 SUB DI,CX ; шчьхэ хь DI фы  ёpртэхэш 
F3A6 REPZ CMPSB ; ёpртэштрхь DS:SI ё ES:DI (юpшэшэры№э√щ ё
; ■чхpёъшь ярpюыхь) pw with user pw) фю CX=0
; шыш яхpтюую эхёютярфр■∙хую ёшьтюыр

┬шфшЄх ъръ яpюёЄю? ┬ёх юэш шёяюы№чє■Є эхьэюую ёЄрp√ї яpшхьют,
ыхэшт√х єсы■фъш! ╟фхё№ ¤Єющ ёхъЎшш яpхф°хёЄтєхЄ ьрыхэ№ър  яpюЎхфєpр яхpхтюфр
■чхpёъюую ярpюы  т ёЄpюўхўэ√щ pхушёЄp, яюёъюы№ъє юpшушэры№э√щ тёхуфр
ёЄpюўхўэ√щ.
╥хяхp№ т√ тхpю Єэю чрїюЄшЄх ┴p¤щъ╧юшэЄшЄ№ ¤Єш рфpхёр фы  юёЄрэютъш
яpюуpрьь√ ёpртэхэш  ш шчєўхэш  хх ьхїрэшчьр... ¤Єю эх ёpрсюЄрхЄ, яюёъюы№ъє
¤Єю сєфхЄ эх 'fixed' BreakPoint, яюЄюьє ўЄю ¤Єш ыюъ¤щ°хэ√ т√ч√тр■Єё  ё
фpєующ эєьхpрЎшхщ ёхуьхэЄр:ёьх∙хэш , ўЄю т√ эр°ыш (ёЄрp√щ Єp■ъ DOS) {╒ь,
эхєцхыш Єръ Єpєфэю тыхяшЄ№ Єєфр юфэюсрщЄют√щ ъюф CCh /Int 3/, р яюЄюь
тюёёЄрэютшЄ№ шчьхэхээ√щ срщЄ, -   тёхуфр Єръ фхыр■, pрсюЄрхЄ эр тёх 100%}
╧ю¤Єюьє, т√ ёэрўрыр ─╬╦╞H█ яюёЄртшЄ№ Memory_Read/Write BreakPoint эр ¤Єш
ыюъ¤щ°хэ√ ш чрЄхь тч Є№ шї... ╥хяхp№ т√ ьюцхЄх юсэрpєцшЄ№ ёхуьхэЄ:ёьх∙хэшх,
шёяюы№чєхь√щ яpюЎхфєpющ ёpртэхэш  ш Єюы№ъю Єхяхp№ т√ ьюцхЄх яюёЄртшЄ№ Fixed
BreakPoint {Fixed - ¤Єю ўЄю execute?..} (эряpшьхp эр NOT CX шэёЄpєъЎш■).
╥хяхp№ чряєёЄшЄх BreakPoint-ютє■ яpюуpрььє. ─рьяшpєщЄх ES:DI ш єтшфшЄх
юpшушэры№э√щ ярpюы№. ╒юpю°ю-Єю ъръ! ╠√ Єхяхp№ шьххь юpшушэры№э√щ ярpюы№
'as_extenso' т юъэх фрьяр ярь Єш. ▌Єю "¤їю".
╠хцфє яpюўшь, ёє∙хёЄтє■Є Ўхы√х °ъюы√ їръшэур, юёэютрээ√х эр эрїюцфхэшш