복사 방지 소프트웨어에서 작업 중이며 모든 종류의 실행 파일 (관리되는 파일과 관리되지 않는 파일)을 래퍼로 만들려고합니다. 그런 다음이 래퍼는 평소와 같이 디스크에 쓰지 않고 래핑 된 실행 파일을 실행하려고 시도하고 으로 실행합니다.랩핑 및 보호 실행 파일
.Net 4.0 어셈블리 및 Appdomain을 사용하여 작동 시키지만 읽었으며 테스트 한 결과 .Net 실행 파일에서만 작동합니다. 어떻게하면 드라이브에 "알몸"으로 쓰지 않고도 모든 종류의 실행 파일을 실행하고 실행할 수 있습니까?
예를 들어 암호화 된 압축 파일 내에서 실행할 수 있습니까? 또는 MemoryMappedFile?
AFAIK 정상 실행 파일은 실행 전에 디스크에 기록되지 않습니다. 나는 닷넷에 대해 모른다. 어쨌든, 모든 실행 파일은 기계 코드로 RAM에 있어야합니다 (이것은 암호화되지 않은 압축되지 않은 것을 의미합니다). – m0skit0
@ m0skit0 - .NET 응용 프로그램은 일반 실행 파일과 유사하게 작동합니다. –
Process.Start()로 시작할 수있을 것 같지 않습니다 - 프로그램을 메모리에로드 한 다음 시작 주소에 jmp를 수행 할 수 있지만이 작업을 수행하는 데는 모든 종류의 끔찍한 보안 문제가있을 수 있습니다. . –