2

이 소프트웨어가 특정 작업과 관련된 API 함수를 사용하지 않고 모든 프로세스 및 쓰기 프로세스를 나열 할 수있는 이유를 설명 할 수 있습니까? 또는 현재 기능으로 그 일을 할 수 있습니다. 그 소프트웨어는 ArtMoney라고 불린다. 그것의 기억 편집자 소프트웨어. 내가보기 소스에서 기능을 목록을 얻을 수 있습니다. 이 소프트웨어가 현재 프로세스를 열거하고 문서화되지 않은 현재 기능으로 메모리를 작성하는 방법

는 현재 새로운 버전은

am800.exe

을했다. 이 목록은 소프트웨어가 사용하는 기능입니다.

VirtualProtect 
LoadLibraryA 
ExitProcess 
GetProcAddress 
RegCloseKey 
ImageList_Add 
ChooseFontW 
SymLoadModule64 
Pie 
WNetGetConnectionW 
memset 
NetWkstaGetInfo 
IsEqualGUID 

우리가 소프트웨어를 참조하십시오으로

는 실행할 때 다른 DLL을로드 의미 기능 loadlibraryA 있습니다. 프로세스 탐색기 모듈을보고 소프트웨어가로드하는 dll을 발견했습니다. 나는 몇 가지 기능을 가지고 am800.dll을 발견. 내가 EnumProcessesWriteProcess 같은 과정을 나열 할 수있는 관련 기능을 찾을 수없는 것을 봐서

SetThreadLocale 
GetLastError 
GetStdHandle 
GetSystemInfo 
SysReAllocStringLen 
PostThreadMessageW 

. 그 후 나는 theres가 다시 am800.dll 전에로드하는 모듈이라고 생각합니다. 내가 프로세스 탐색기에서 확인한대로. 1을 1로여십시오. 의심스러운 파일이 없습니다. 이 소프트웨어는 인기있는 오래된 소프트웨어입니다. 그래서이 개발자는 존재를 숨기기 위해 exprience가 있다고 생각합니다.

답변

0

LoadLibraryA은 런타임에 프로세스에 DLL을로드하고 GetProcAddress은로드 된 라이브러리의 특정 함수에 대한 함수 포인터를 반환합니다. 이 두 함수를 함께 사용하면 DLL 함수에 효과적으로 후기 바인딩 할 수 있습니다.

런타임 중에 프로그램은이 함수를 사용하여 필요한 라이브러리를로드 한 다음 필요한 기능에 대한 포인터를 얻습니다. 이것은 악성 코드 탐지를 피하기위한 것이거나 프로그램이 서로 호환되지 않을 수도있는 여러 버전의 Windows API에서 실행될 수 있도록하는 것일 수 있습니다.

+0

악성 코드 탐지를 피할 것으로 기대하지는 않습니다. 열려있는 dll은 여전히 ​​응용 프로그램이 파일을 여는 것으로 계산됩니다. 모든 파일 열기는 안티 멀웨어 소프트웨어를 통해 진행됩니다 (대부분 통과 할 가능성이 있음). – UKMonkey

+0

아, 이제 알겠습니다. btw 거기에 정확한 GetProcAddress 같은 다른 기능이 있습니까? –

+0

@claudia 무슨 뜻인지 모르겠습니다. – cdhowie