Отгадка.


? ???????????? ? ??????? ????? ??? ??? ????? ?????. ?????????????, ?????????? ?????????? ???????? DLL ?????????? ????????? «version.dll» ?? ?????, ? ?? ?? ??????? ????. ? ?????????? ????????? ????? ?????? ??????????, ????????? ????????? ?? ?????????. ????? ??? ? ???? ?????? ????? DLL ? system32, ??? ??? ??????????? ??????????????? ???????? ???????, ?????????? ??????? ????????? 64-? ?????? DLL ? 32-? ?????? ???????. ???.

?? ???????? ?? ????? ???? ?? ??? ?? ? ??????, ??? ????? ?????????? ? ?????? ??????. ?????? ????????? ????? ? ???, ??? ???????? DLL ?????????? ?????? ??? ????????????. ?? ???? ????? ?? ??????, ??? ?????????? ??????? ??? ?????????? ????????. ? ??????????? ??????? ??????? ??? ????????, ??? «????? ???????? ???????????» ?? ???????? ?????? ????? ????????? ???????????????, ????????? ?????-?? ???? ???. ?????? ?????-?? ????? ??? ????? ????????, ??? ??? ?????? ?????????? ????? ??????????? ?????. ? ?????, ?? ?????? ????????, ??? ??????? ?? ????? ??????????? ???????? ?????????.

?????? ??? ?? ???????????? ?????? ??????? ???????? DLL. ????? ???????? ?????: ???????? COM ???????, ????? CreateProcess ??? ShellExecute, ????????? ???? ?? ??????? ????????? ? ?.?. ? ?.?.

?????? ???????? ??????????? ? ???, ??? ??????????? ??????????/?????????????? ??????? ???? ??????, ???? ??????????. ????????????, ??? ?? ???? ???????????? ??????? ???????? ?? ??????????? ?????? ?????? ???? ?????? ???????? ?????????, ? ?????? – ?????? ??????????? ????????. ? ?????? ???????, ???? ?????????? ??????? ?? ???????? ??????????? ??? 32-? ?????????? ? 64-? ?????????? ????. 32-? ?????? ?????????? ?????? ???????????? «sysnative» ??? ??????? ? ?????????? ???????? «system32». 64-? ????????? ?????????? ?????? ?? ????? ? «sysnative» ? ???????? ??????????????? ??? ??? ?? ????????. ??, ? ????, ??? Microsoft – ???. ? ?????? ?????????? ?????? ? ????????? ????????. 🙂

??? ???? ??????, ?? ?????? ????????????? Far Manager ?????????? ??????, ??????? ?????? ??? ????????? ??????????????? ???????? ??????? ??? ? ???????? ??? ?????? ??????????. ?????? ? ????? ??????? ? ????????? «system32». ?? ????, ??? ??? ???????????, ?? ????? ???????????? ? ????? «?????????? - ????????». ????????????? ????????, ???? ?? ?????????.

?????? ????????? ??????????? ? ??????????? ???????????????? LoadLibrary ? ??????????????? ???????? ???????. ???? ????????? 32-? ????????? ?????? fileverison.exe, ????? ???????? ?????? ???? (???? «%windir%\system32\ntoskrnl.exe»), ?? ???????? ????????. ?? ?????? ?? ??????????????? ???????? ???????, 32-? ????????? ??????? ??????? ???????? ??????? ?? 64-? ??????? «ntoskrnl.exe». ???? ???????? «ntoskrnl.exe» ? «%windir%\syswow64», ???? ???????????????? ???????, ???.

??? ??? ??????????? ????? ??????. GetFileVersionInfo ???????? LoadLibraryEx ? ?????? LOAD_LIBRARY_AS_IMAGE_RESOURCE. ???? ???? ?????????, ??? ???? ??????????? ?????? ??? ?????????? ????????. ???? ?????? ???? ???? ? ?????? ??????? ????? ???? ? ???????? ?????? ?????????? ????????, LoadLibraryEx ????????? ????????? ??????????????? ???????? ??????? ? ???????? ???????. ? ?????? ????, 64-? ?????? «ntoskrnl.exe» ????? ???????? ?? ????? ?????? ???????. ???????, ??? ???? ???????? ???????? ?????? ??? ??????? «system32» ? ?????? ????????? ?? ?????? ????????? ? ?????????????? ? ?????-?? ?? ??????????.

??? ????? ??? ?????.

Cross-posted from blog.not-a-kernel-guy.com.

Skip to main content