분류 전체보기
-
-
HITCON 2016 SecretHolderPwnable/CTF 2017. 7. 11. 00:41
main 메뉴는 Kepp Wipe Renew 이 세가지가 있다. 그 세가지는 40 4000 40000 사이즈로 malloc free read 가 가능하고 40000사이즈를 주 사용하게된다. mmap으로 할당하여서 heap에는 안 생기지만 free하고 다시 할당하면 어떤 flag때문인지 top 청크가 넒어서인지 어쨋든 heap에 할당이된다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596from pwn import * p=proc..
-
-
-
-
Secuinside 2017 ohcePwnable/CTF 2017. 7. 3. 00:28
syscall을 이용한 포너블문제들은 제대로 풀어본적이없어서 엄청나게 어려웟다 ㅠㅠㅠㅠ WRITE함수를 syscall을 이용하여 출력을 시킨다. read함수도 마찬가지 시작 메뉴는 이렇다.1을 입력하면내가 누른 입력값 그대로 나오고, 2를 입력하면 거꾸로나온다. 이 문제에서 신기한점은 특정한 개수의 값을 입력하면 주소가 릭이된다. (96개를 입력했다 96말고 다른 개수로 넣어도 릭되는 숫자들이있음) 특정한 글자수를 맞춰서 Reverse를 잘 입력하면 맨 앞에 넣은 글자로 ebp가 변한다. (즉, eip도 변한다는 뜻)그건 알겠는데 처음 echo를 했을때 "sfp-0x30"을 넣는 부분으로 eip가 바뀌는게 왜 저렇게되는건지 gdb로 디버깅을 해도 잘 모르겠다.. 그냥 대충 문제상에서 저런거구나 생각하고 ..
-
Hacklu 2014 oreo카테고리 없음 2017. 6. 27. 11:16
add부분에서 heap오버플로우가일어남house_of_spirit를 사용하면 풀수있음Message변수에 들어가있는주소는 add할때마다 올라가는 숫자(카운트)가 저장되어있음그 카운트가 청크 사이즈가됨 + 0x4가 변조전에 add한 청크를 가르키고있는 포인터임그래서 Message+0x4로 add부분에서 수정하면그곳이 데이터시작위치가됨 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354from pwn import * #p=remote("localhost",9001)p=process("./oreo_35f118d90a7790bbd1eb6d4549993ef0")elf=ELF('oreo_35..
-