Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 ragg2-cc 명령입니다.
프로그램:
이름
ragg2-cc - 쉘코드 컴파일을 위한 CC 프론트엔드
개요
ragg2-cc [-a 아치] [-b 비트] [-k 커널] [-o 파일] [-dscxvh]
기술
ragg2-cc는 CC의 프런트엔드입니다. 작은 바이너리(1KB)나 쉘코드를 생성하는 데 사용됩니다.
C 소스의 바이너리 또는 XNUMX진수입니다.
사용되는 컴파일러는 CC 환경에서 구성된 컴파일러입니다. 이것은 테스트되었습니다
gcc, llvm-gcc 및 clang.
sflib(shellforge4) 포함을 사용하여 syscall 정의를 가져옵니다.
현재는 linux/darwin x86-32/64만 지원됩니다. 더 많은 지원 계획
아키텍처.
옵션
-a 아치 아키텍처 x86 설정, arm
-b 비트 32 또는 64
-k 커널 윈도우, 리눅스, OSX
-o 파일 컴파일 결과를 쓰기 위한 출력 파일
-h 도움말 메시지 표시
-v 버전 표시
-d 어셈블러 코드 표시
-s 어셈블리 파일 생성
-c 컴파일된 쉘코드 생성
-x XNUMX진수 바이트 표시
예
$ 고양이 안녕.c
int main () {
쓰기(1, "Hello World\n", 12);
출구(0);
}
$ ragg2-cc hi.c
hi.c.bin
# 작은 바이너리로 연결됩니다. 294바이트입니다.
$ wc -c < hi.c.bin
294
$ ./hi.c.bin
안녕하세요
# 컴파일된 쉘코드에는 XNUMX이 있습니다.
$ ragg2-cc -x hi.c
e90000000083ec0ce800000000588d882a000000b804000000606a0651
6a0150cd8083c41061b8010000006a0050cd8083c40883c40cc368656c
6c6f0a00
# 바이패스하려면 키 32가 있는 xor 인코더를 사용하세요.
$ ragg2 -e xor -c 키=32 -B `ragg2-cc -x hi.c`
6a3e596a205be8ffffffffc15e4883c60d301e48ffc6e2f9c920202020
a3cc2cc82020202078ada80a2020209824202020404a26714a2170eda0
a3e4304198212020204a2070eda0a3e428a3e42ce348454c4c4f2a20
onworks.net 서비스를 사용하여 온라인으로 ragg2-cc 사용