강의 설명

ROPgadget
ROP(Return Oriented Programming)에 필요한 가젯의 주소를 찾는 도구에 대해 알아봅니다.

one_gadget
원샷 가젯의 주소를 찾는 도구에 대해 알아봅니다.

pwngdb
gdb에서 유용한 기능을 추가한 도구에 대해 알아봅니다.

pwntools
익스플로잇 코드를 작성할 떄 유용한 도구에 대해 알아봅니다.

강의 목표
공격에 필요한 도구를 사용할 수 있다.
이 강의와 관련된 질문들입니다.
5개의 질문
gdb 실행 오류
안녕하세요. pwndbg를 잘 쓰다가 어느 순간부터 갑자기 pwndbg->(gdb)로 변경되면서 실행이 안됩니다. 오류 내용은 다음과 같습니다. Traceback (most recent call last): File "/home/pwnrev/pwndbg/gdbinit.py", line 109, in <module> import pwndbg # noqa: F401 File "/home/pwnrev/pwndbg/pwndbg/__init__.py", line 6, in <module> import pwndbg.color File "/home/pwnrev/pwndbg/pwndbg/color/__init__.py", line 7, in <module> from . import theme File "/home/pwnrev/pwndbg/pwndbg/color/theme.py", line 2, in <module> from pwndbg.gdblib import config File "/home/pwnrev/pwndbg/pwndbg/gdblib/__init__.py", line 4, in <module> from pwndbg.gdblib import arch as arch_mod File "/home/pwnrev/pwndbg/pwndbg/gdblib/arch.py", line 2, in <module> import pwnlib File "/home/pwnrev/.local/lib/python3.10/site-packages/pwnlib/__init__.py", line 37, in <module> importlib.import_module('.%s' % module, 'pwnlib') File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/home/pwnrev/.local/lib/python3.10/site-packages/pwnlib/args.py", line 7, in <module> from . import term File "/home/pwnrev/.local/lib/python3.10/site-packages/pwnlib/term/__init__.py", line 5, in <module> from . import readline File "/home/pwnrev/.local/lib/python3.10/site-packages/pwnlib/term/readline.py", line 3, in <module> from . import term File "/home/pwnrev/.local/lib/python3.10/site-packages/pwnlib/term/term.py", line 30, in <module> fd = sys.stdout.buffer AttributeError: '_GdbOutputFile' object has no attribute 'buffer'
#시스템해킹
칼리리눅스 pwndbg 설치
칼리리눅스에 강의에서 말한 4개의 파일을 실수로 전부 다운받아버렸는데 GDB를 실행하면 GEF만뜨고 pwndbg는 찾을 수 없다고 뜹니다... 해결방법 있을까요?
#시스템해킹
pwntools - sendafter 인자 질문
예시에서 sendafter의 인자에 "\n"과 "AAAA"를 주었잖아요 0번째 인자와 1번째 인자는 각각 무엇을 뜻하나요? \n을 송신하고 AAAA까지 읽어오겠다는 뜻인가요?
#시스템해킹
pwntools 작업 환경
강의에서 pwntools를 사용한 환경이 32bit인가요? 저는 Ubuntu 18.04.5 LTS i686 (32비트)를 Vmware에서 돌리고 있는데 pwntools을 설치하면 Pwntools does not support 32-bit python. Use a 64-bit release라고 뜨는데 32비트 환경에 64비트 리눅스를 설치하는 방법이 있나요?
#시스템해킹
pwntools의 cyclic1에서 질문이 있습니다..
cyclic1.py는 8 바이트마다 바뀌는 2048 바이트의 문자열을 생성하고 입력하는 코드입니다. 이를 실행하고 ret 명령어에서 멈췄을 때의 rsp 레지스터를 확인하면 리턴 주소의 위치를 알 수 있습니다. 위에 이러한 문구 다음에 gdb로 ret에 덮여씌어진 값을 보기 위해 x/gx $rsp을 한 것으로 보입니다. 이 과정에서 interactive() 상태에서 gdb를 pid?로 붙혀서 확인하신건가요?? pid에 붙었더니 아래와 같은 문구도 출력이 되면서.. 안되더라고요 혹시나 아시나요?? Attaching to process 9504 warning: process 9504 is a zombie - the process has already terminated ptrace: 명령을 허용하지 않음.
#시스템해킹
강의 평점
0.0★ (0)
0
Tools
0.0★ (0)
Free
상세정보
약 1 hour 소요
쉬운 난이도
Linux