One Gadget

htARTE (HackTricks AWS Red Team Expert)를 통해 **제로부터 영웅이 되는 AWS 해킹을 배우세요**!

HackTricks를 지원하는 다른 방법:

기본 정보

One Gadgetsystem 및 **"/bin/sh"**를 사용하는 대신 셸을 획득할 수 있게 해줍니다. One Gadget은 libc 라이브러리 내에서 셸을 획득할 수 있는 방법(execve("/bin/sh"))을 단 하나의 주소로 찾아냅니다. 그러나 일반적으로 몇 가지 제약 조건이 있습니다. 가장 일반적이고 쉽게 피할 수 있는 제약 조건은 [rsp+0x30] == NULL입니다. RSP 내의 값을 제어할 수 있기 때문에 더 많은 NULL 값을 보내 제약 조건을 피할 수 있습니다.

ONE_GADGET = libc.address + 0x4526a
rop2 = base + p64(ONE_GADGET) + "\x00"*100

One Gadget이 가리키는 주소에는 libc가 로드된 기본 주소를 더해야합니다.

One Gadget은 임의 쓰기 2 실행 기술에 큰 도움이 되며 ROP 체인을 간소화할 수 있습니다. 하나의 주소만 호출하면 되므로 (요구 사항을 충족시키는) ROP을 단순화할 수 있습니다.

ARM64

github 저장소는 ARM64를 지원한다고 언급하지만 Kali 2023.3의 libc에서 실행할 때 어떤 가젯도 찾지 못합니다.

Angry Gadget

github 저장소에서: OneGadget에서 영감을 받은 이 도구는 파이썬으로 작성되었으며 execve('/bin/sh', NULL, NULL)를 실행하는 가젯에 대한 제약 조건을 테스트하기 위해 angr를 사용합니다. One Gadget에서 시도할 가젯이 부족하다면, Angry Gadget은 더 복잡한 제약 조건을 가진 가젯을 많이 제공합니다!

pip install angry_gadget

angry_gadget.py examples/libc6_2.23-0ubuntu10_amd64.so
htARTE (HackTricks AWS Red Team 전문가)로부터 AWS 해킹을 제로부터 전문가까지 배우세요

다른 방법으로 HackTricks를 지원하는 방법:

Last updated