pwnable(115)
-
HACKCTF - Basic_BOF #2
가장 먼저 해야할 일은 역시 실행시켜보는 것 이상한 문구가 나와서 당황했습니다. 따라서 이 프로그램은 뭔가 넣으면 뭔가가 나오는 프로그램 인것을 알 수 있죠 더 이상은 모르니 IDA로 까보면 1. [7번줄] s에 0x85사이즈의 값을 받아넣는다 2. [6번줄] s값을 출력하는 함수의 주소를 v5에 넣는다 3. [8번줄] s값을 출력하는 함수 주소 실행 그럼 이제 어떻게 풀어야할지 생각을 해야하는데 그 전에 보호기법 확인해서 풀이방향을 좁혀보자. nx가 가능하니까 단순 bof로 쉘코드를 넣는건 불가능(짜피 버퍼 크기 딸려서힘듬) 그럼 ROP쪽이나 BOF에서 리턴주소 바꿔서 하는 가능성이 커보여서 함수들 찾아보는 중 에 초반에 나온 "하아하아하아하아"그 멘트를 찾고자 STRING을 봤는데 /bin/dash를..
2020.07.07 -
HACKCTF - Basic_BOF #1
오랜만에 포너블을 잡고 첫번째로 풀이한 문제 프로그램은 만나서 가장 먼저 해야하는일은 실행시켜보는 것 보아하니 값을 입력받고 그 값이랑 또 다른값인 체크 값을 보여주는 것 같다, IDA로 코드를 까봐서 무슨 동작을 하는 친구인지를 살펴보는게 좋을 것 같다. 코드를 보면 15번째에 쉘을 주는 코드가 있기에 15번째로 가려면 어떻게 해야할지가 관건이다 (10번째 분기문 통과 & 12번째 분기문 들어오기) 1. 10번줄 통과하려면 v5 값을 다른값으로 변조해주면 된다. 2. 12번줄에서 안으로 들어오려면 v5 값을 0xdeadbeef 로 넣어야한다. 정답이다 전형적인 BOF문제이다. 여기서 BOF로 익스플로잇을 하려면 s의 버퍼크기를 알아서 모두 덮고, 그 뒤에있는 v5에 0xdeadbeef를 넣어주면 된다...
2020.07.06 -
Webhacking.kr 4번
==이 붙는걸로 보아 base64라고 짐작 할 수 있다.일단 먼저 한번 디코딩한다. 아래와 같은 결과 가 나오면 40bit인것으로 보아 sha1으로 게싱을 해보았다. 1차로 암호가 아래와 같이 풀리게되었고. 한번 더나와서 한번 더 풀었다.아래와 같다. test라는 비번이다.이를 flag에 입력해주면? (crackup)
2018.11.07 -
h3x0r easy_of_the_easy write-up
적당히 심심할때 풀어보면 좋을만한 문제였습니다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364from pwn import * r = process("./easy_of_the_easy")e = ELF("./easy_of_the_easy")l = e.libcbss = e.bss()+0x16write_got = e.got["write"]read_got = e.got["read"]read_plt = e.plt["read"]write_plt = e.plt["write"]shell = "/bin/sh\x00"pppr = 0x080489e9contex..
2018.11.07 -
codegate2018 - BaskinRobins31
오래간만에 블로그에 포스팅은 하네요 ㅎㅎBaskinRobins31입니다. 12345678910111213141516171819202122232425262728293031323334353637383940from pwn import * r = process("./BaskinRobins31")e = ELF("./BaskinRobins31")l = e.libc write_plt = e.plt["write"]write_got = e.got["write"]read_plt = e.plt["read"]read_got = e.got["read"]bss = e.bss() + 16shell = "/bin/sh"pop_rdi_rsi_rdx = 0x000000000040087apop_rdi = 0x0000000000400bc3..
2018.10.31 -
18회 해킹캠프 - 참가후기
안녕하세요~17회 해킹캠프 참여하고 두번째로 18회 해킹캠프에 참여하게 되었습니다.저번 17회 해킹캠프 당시에는 해킹에 대한 정보를 아무것도 몰랐지만 이번 18회 해킹캠프에서는 저번에 했었던 경험들을 바탕으로 열심히 학습해서 약간에 지식이 생겼었습니다. 그래서 이번에는 “흠… 포너블 한문제는 풀어볼까?” 라고 생각했었는데 저희팀에 시스템해킹을 잘하시는분이 계셔서 목표를 다시 잡았다. 다른친구랑 둘이서 미스크 올클을 해보기로하였다.시스템해킹도 좋아하지만 웹해킹 하는것도 좋아해서 심심할때 자주 들어가봤다. CTF가 모두 끝나고 나서 풀이를 들으니 웹 문자열 하나 안달아서 flag를 못찾았다.. ㅎㅎ.. 발표들은 첫번째날 두번째날 모두 해킹캠프에 참여하는 사람들인 초보자를 위한 발표 치고는 난의도가있었지만 그..
2018.09.21