rustredops

Rustredops는 Rust에서 개발 된 Red 팀 운영과 관련된 다양한 도구 및 프로젝트를 보관하는 저장소입니다. 이 저장소는 보안 평가 및 침입 테스트를 수행하려는 보안 전문가 및 침투 테스터에게 효과적이고 효율적인 도구를 제공하는 데 전념합니다.
목차
- 내용물
- 자원
- 다른 녹슬 프로젝트
- 요구 사항
- 엮다
- 프로젝트 컴파일
- 대상 아키텍처 추가
- 특정 아키텍처를위한 컴파일
- 시작하는 방법
- Rustredops에 기여합니다
- 참조
- 특허
내용물
이 저장소는 각각 고유 한 목적과 기능을 갖춘 여러 프로젝트로 구성됩니다. 다음은 프로젝트의 몇 가지 예입니다.
APC 주사
- 이 프로젝트는 대상 프로세스에서 악성 코드를 실행하기 위해 비동기 코드 주입 (APC) 기술을 이용합니다.
API 후크
- Windows API 기능에 대한 호출을 가로 채고 조작 할 수있는 프로그래밍 기술인 API 후크에 대한 데모.
안티 버그
API 망치
- API 망치질은 맬웨어를 지연시키기 위해 다양한 작업을 수행하는 것으로 구성됩니다.
항 분석
이진 정보
- 이것은 녹 바이너리에 메타 데이터를 포함 시키거나 관련 아이콘을 변경하려는 경우 간단한 데모입니다.
블록 DLL 정책
- Microsoft가 서명하지 않은 DLL의로드를 피하십시오.
드라이버를 만듭니다
- Rust를 사용하여 간단한 드라이버를 만드는 방법을 보여주는 프로젝트입니다.
DLL을 만듭니다
- Rust를 사용하여 DLL을 만드는 방법을 보여주는 프로젝트입니다.
콜백 코드 실행
uefi를 만듭니다
- Rust를 사용하여 UEFI를 만드는 방법을 보여주는 프로젝트입니다.
암호화 문자열을 컴파일합니다
- 컴파일 시간에 문자열을 암호화하고 런타임에 해독합니다.
Wi -Fi 추출
- Winapis를 사용하여 Wi -Fi 비밀번호를 추출하는 것은 Netsh 명령의 맞춤형 형식입니다.
초기 조류 APC 주사
- 기본 프로세스가 시작되기 전에 코드를 실행하는 APC 주입의 변화에 중점을 둡니다.
암호화 (쉘 코드)
- AES 및 RC4를 사용하여 쉘 코드를 암호화 / 해독합니다.
열거 프로세스
모든 토큰을 활성화하십시오
명령을 실행하십시오
지옥 / 후광 / 타르타루스 게이트
- Hells / Halos / Tartarus Gate 기술을 통해 SSN 복구
IAT 난독 화
- getProcaddress 및 getModule Handle을 대체하여 난처한 IAT.
위장
- IAT를 위장하고 악의적 인 외관을 피하기 위해 API를 내보내는 기술 (실행하지 않고).
ldrloaddll unlok
- 스프링 보드를 주입하여 EDR 후크를 우회하고 ldrloaddll을 사용하는 개념 증명.
로컬 페이로드 실행
- 이 프로젝트는 시스템의 지역 환경에서 악의적 인 페이로드를 직접 실행하는 것을 다룹니다.
로컬 매핑 주입
- 로컬 프로세스에 대한 메모리 매핑을 통해 악성 코드 주입 수행.
국부 기능 스톰 핑 주입
- 로컬 실행 기능을 악의적 인 코드로 교체하고 기본 동작을 변경하는 데 중점을 둡니다.
로컬 스레드 납치
- 이 프로젝트는 악의적 인 코드를 실행하기 위해 로컬 시스템에서 실행되는 프로세스 스레드를 납치하는 것을 다룹니다.
지역 PE 주사
Minidump-Rs
모듈 스톰 핑
- 모듈 스토핑 기술은 매핑되거나로드 된 DLL의 입구 점에 쉘 코드를 주입하는 데 중점을 둡니다.
ntdll 해방
- 정지 된 프로세스를 통해 NTDLL을 실행합니다.
명명 된 파이프 서버 / 클라이언트
- 명명 된 파이프를 사용하여 프로세스간에 통신하는 방법을 보여주는 간단한 프로젝트.
모듈 과부하
- 모듈 오버로드는 대상 DLL을 매핑하고 내용을 EXE / DLL 파일로 대체 한 다음 실행하는 기술입니다.
난독 화 쉘 코드
- IPv4, IPv6, Mac 및 UUID를 사용한 쉘 코드 난독 화.
PPID 스푸핑
PE 헤더를 구문 분석합니다
- 이 코드는 Windows 실행 파일의 PE 헤더를 구문 분석하는 데 중점을 둡니다.
패치 ETW
패치 AMSI
페이로드 실행 제어
- 뮤텍스, 이벤트 및 세마포어를 통한 페이로드 실행 제어.
프로세스 인수 스푸핑
- 악의적 인 활동을 숨기는 과정의 인수를 마스킹하거나 변경하는 기술을 이용합니다.
프로세스 주입 (DLL)
- 동적 링크 라이브러리 (DLL)를 실행중인 프로세스에 주입하여 악성 코드를 실행하는 데 중점을 둡니다.
프로세스 주입 (쉘 코드)
- 쉘 코드 주입을 실행되는 프로세스로 직접 이용하여 악의적 인 작업을 제어하거나 실행합니다.
페이로드 배치
- .text 섹션에 쉘 코드를 저장 한 다음 실행합니다.
최면 과정
- 이 기술은 디버깅되고있는 프로그램의 실행 흐름을 제어하고 새로운 스레드의 생성,로드 된 모듈, 예외 등과 같은 관련 정보를 얻는 데 중점을 둡니다. 또는 쉘 코드를 실행합니다.
페이로드 실행 섬유
페이로드 스테이징
- 이 프로젝트는 HTTP 요청 및 레지스트리 키를 사용하여 Shellcode 검색을 수행하는 방법을 보여주는 데 중점을 둡니다.
프로세스 고스트
- 프로세스 고스트 기술을 사용하여 PE 파일로드.
프로세스 헤르페더 핑
- 이미지가 매핑 된 후 디스크의 내용을 수정하여 프로세스의 의도를 가려줍니다.
원격 스레드 납치
- 원격 시스템 프로세스에서 스레드의 납치를 해결하여 악의적 인 동작을 수행합니다.
원격 기능 스톰 핑 주입
- 원격 시스템에서 기능을 대체하여 악의적 인 활동을 수행합니다.
원격 매핑 주입
- 원격 프로세스에 메모리 매핑을 통해 악성 코드 주입을 수행합니다.
CRT를 제거하십시오
- 런타임 중 CRT (C 런타임 라이브러리)의 사용을 최소화하고 이진에서 불필요한 정보를 제거하기 위해 추가 플래그를 적용하는 데 중점을 둡니다.
자기 삭제
문자열 해싱
Syscalls
- 직접 및 간접적 인 SyScall을 실행합니다.
실없는 주입
WMI
- WMI (Windows Management Instrumentation) 쿼리 실행.
WebAssembly ShellCode
- webAsSembly를 통해 쉘 코드를 실행합니다.
다른 녹슬 프로젝트
다음은 Rust로 수행 한 프로젝트의 다른 예입니다.
- Windows 커널 루트 키트
- COFF 로더
- .NET 실행
자원
- 각 개별 프로젝트에는 프로젝트의 주요 기능 및 기능을 자세히 설명하는 기능 섹션이 포함될 수 있습니다.
- 각 프로젝트에 대한 설치 지침, 사용 및 예제를 해당 디렉토리에서 볼 수 있습니다.
요구 사항
- Rust : Rust는이 저장소에서 도구를 개발하는 데 사용되는 현대적이고 안전한 프로그래밍 언어입니다.
- 화물 :화물은 Rust의 패키지 관리자 및 컴파일러로 프로젝트를 컴파일하고 실행하는 데 필수적입니다.
엮다
프로젝트 컴파일
컴파일을 시작하려면 다음 명령을 사용하십시오.
대상 아키텍처 추가
다른 운영 체제를 사용하거나 특정 아키텍처를 위해 컴파일 해야하는 경우 다음 명령으로 사용 가능한 모든 대상 아키텍처를 나열 할 수 있습니다.
원하는 대상 아키텍처를 식별 한 후에는 Rustup을 사용하여 추가하십시오.
rustup target add < arch >
X86_64-PC-Windows-GNU와 같은 원하는 아키텍처로 교체하십시오.
특정 아키텍처를위한 컴파일
그런 다음 특정 아키텍처 프로젝트를 컴파일합니다.
cargo build --release --target < arch >
시작하는 방법
이 저장소의 프로젝트 사용을 시작하려면 다음 단계를 수행하십시오.
- 이 저장소를 로컬 컴퓨터에서 복제하십시오.
git clone https://github.com/joaoviictorti/RustRedOps.git
- 관심있는 프로젝트의 디렉토리로 이동하십시오.
cd RustRedOps/ < name-project >
- 이 디렉토리의 ReadMe에 설명 된대로 프로젝트 별 설치 및 사용 지침을 따르십시오.
Rustredops에 기여합니다
rustredops 에 기여하려면 다음 단계를 따르십시오.
- 이 저장소를 포크하십시오.
- 분기를 만듭니다 :
git checkout -b <branch_name> . - 변경하고 헌신하십시오 :
git commit -m '<commit_message>' . - 변경 사항을
git push origin <branch_name> 으로 밀어 넣으십시오. - 풀 요청을 만듭니다.
또는 풀 요청을 만드는 방법에 대한 GitHub 문서를 참조하십시오.
참조
나는이 특별한 저장소를 만드는 데 필요한 도구와 영감을 제공 한 놀라운 프로젝트와 매혹적인 기술의 제작자에게 진심으로 감사를 표하고 싶습니다.
- https://github.com/memn0ps
- https://github.com/hasherezade
- https://github.com/vxunderground
- https://github.com/nul0x4c
- https://github.com/mrd0x
- https://github.com/cracked5pider
- https://github.com/trickster0
- https://github.com/blwasp
- https://balwurk.com/shellcode-evasion-using-webassembly-and-rust
- https://github.com/janoglezcampos/rust_syscalls
- https://github.com/microsoft
- https://ired.team
- https://github.com/rust-osdev/uefi-rs
- https://github.com/stephanvanschaik/windows-kernel-rs
- https://discord.gg/rust-lang-community (많은 도움이 된 불화 커뮤니티)
- https://github.com/ccob
- https://github.com/anvie/litcrypt.rs
특허
이 프로젝트는 MIT 라이센스 에 따라 라이센스가 부여됩니다