
레드 팀 작전을 위한 Rust 무기화.
임플란트 개발 및 일반적인 공격 작업을 위해 Rust를 무기화하는 실험입니다.
mingw 툴체인만 설치하면 되지만, 특정 라이브러리는 다른 OS에서 성공적으로 컴파일되지 않을 수 있습니다.| 파일 | 설명 |
|---|---|
| Allocate_With_Syscalls | ntapi 라이브러리를 사용하여 NTDLL 함수를 직접 호출합니다. |
| Create_DLL | DLL을 만들고 메시지 상자를 띄웁니다. Rust가 이를 완전히 지원하지는 않으므로, Rust DLL에는 main 함수가 없어 약간 문제가 생길 수 있습니다. |
| DeviceIoControl | 드라이버 핸들을 열고 DeviceIoControl을 실행합니다. |
| EnableDebugPrivileges | 현재 프로세스에서 SeDebugPrivilege를 활성화합니다. |
| Shellcode_Local_inject | 포인터를 캐스팅하여 로컬 프로세스에서 직접 셸코드를 실행합니다. |
| Execute_With_CMD | Rust를 통해 명령어를 전달하여 cmd를 실행합니다. |
| ImportedFunctionCall | dbghelp에서 minidump를 가져와 실행합니다. |
| Kernel_Driver_Exploit | 간단한 버퍼 오버플로우를 위한 커널 드라이버 익스플로잇입니다. |
| Named_Pipe_Client | 명명된 파이프 클라이언트입니다. |
| Named_Pipe_Server | 명명된 파이프 서버입니다. |
| PEB_Walk | Windows API를 동적으로 해석하고 호출합니다. |
| Process_Injection_CreateThread | CreateThread로 실행 중인 프로세스에 프로세스 인젝션을 수행합니다. |
| Process_Injection_CreateRemoteThread | CreateRemoteThread로 원격 프로세스에 프로세스 인젝션을 수행합니다. |
| Process_Injection_Self_EnumSystemGeoID | EnumSystemsGeoID API 호출을 사용하여 셸코드를 실행하는 셀프 인젝터입니다. |
| Unhooking | 후킹 해제 호출입니다. |
| asm_syscall | 어셈블리를 통해 PEB 주소를 획득합니다. |
| base64_system_enum | Base64 인코딩/디코딩 문자열입니다. |
| http-https-requests | 인증서 검사를 무시하고 GET/POST를 위한 HTTP/S 요청입니다. |
| patch_etw | ETW 패치입니다. |
| ppid_spoof | 생성된 프로세스의 부모 프로세스를 스푸핑합니다. |
| tcp_ssl_client | 인증서 검사를 무시하는 SSL을 사용한 TCP 클라이언트입니다. (컴파일을 위해 openssl과 perl 설치 필요) |
| tcp_ssl_server | 포트 매개변수가 있는 TCP 서버입니다. (컴파일을 위해 openssl과 perl 설치 필요) |