목록Hack/Pwnable (32)
CIDY
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ea5HgS/btsoxWVhpUV/hA1KhPCSqtSGBVRrPnc6t1/img.png)
NX빼고 있는 게 없다. 독특한건 정적 바이너리임. got plt를 찾아볼수가 없음.. 그냥 입력한 주소에 써주는거같은데 got overwrite하면 될듯? 이라기에는 static이다. orw해야하나? 아니면 static 바이너리의 경우 가젯이 엄청 많은걸 이용해서 일전에 3b syscall 이용해서 익스했던 적도 있으니 일단 이쪽으로 열어두고 생각해보자. 함수 쓸만한거 있는지 보고싶은데 p funcname해봐도 strip돼서 나오는게 없어 너무 답답하다 ㅋㅋ 그런데 main다시 돌게 못 해둔 거 보면 오히려 main을 여러번 돌도록 해야 할 것 같다. fini array같은거 덮으면 되나? static이면 참조 호출이 아니라 터지려나.. 흐름 보면 음 뭐지 그냥 oow가 아닌가..? 그냥 썼더니 안 써..
이게 왜 포너블 카테고리일까.. What is socket programming? 네트워크로 연결되어 있는 서로 다른 두 컴퓨터가 데이터를 주고받을 수 있도록 하는 것이다. (네트워크 프로그래밍) Socket Connection 보통 서버는 특정 포트가 바인딩 된 소켓을 가지고 특정 컴퓨터 위에서 돌아가며, 서버는 소켓을 통해 클라이언트의 연결 요청을 리스닝하며 기다린다. 클라이언트는 서버가 돌아가는 머신의 호스트네임과, 서버가 리스닝하고 있는 포트 번호를 통해 서버와 연결을 시도할 수 있다. 이 때 클라이언트는 서버가 자신을 식별할 수 있도록 연결동안 사용될 로컬 포트에 바인딩되며, 이러한 포트 바인딩 작업은 시스템에 의해 이루어진다. 문제가 발생하지 않으면 서버는 연결을 수락하며, 이와 동시에 서버는..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/lvwCt/btr1yATGJcQ/D2b27SBoeKoxgeml0aOBu1/img.png)
첫 오렌지농장 문제였다. 😢🍊🍊 개인적으로 pie를 싫어한다. 없어서 굿. 2.23이네.. 메뉴 문제다.. 9개의 페이지를 작성할 수 있는 것 같다. 순서대로 차곡차곡 쌓아주는 듯. 대충 메모리를 보아하니 602040부터 4바이트는 counter인것같음. 602060 ~ 6020a0까지는 author 0x40바이트고, 6020a0 ~ 6020e0은 malloc주소 저장인데 8칸이다.. 아니 i가 0 1 2 3 4 5 6 7 8 이면 9개인데?? hmm 그리고 6020e0부터는 사이즈 저장해둠. 사이즈 첫 칸은 침범 가능할지도.. %s로 보여준다. read할때 저장해둔 사이즈를 기준으로 한다. 사이즈 저장 첫 칸은 매우 큰 값으로 조작할 수 있으므로 idx 0에 대해 오버플로우 발생 가능. 그리고 사이즈 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dg5F3g/btrXm6wTdqD/EeYFTUKX8H9qwyv0xHD5e0/img.png)
점수보다는 솔브 수를 기준으로 문제 선택을 해나가는 중이다. 이거 풀고 3 X 17 풀어야 한다. 풀로 걸려있다. 힙 싫은데 힙일 확률이 상승함. glibc는 2.23이다. 에휴 init함수에서 mmap함. 메뉴다. add함수이다. 0부터 99까지는 괜찮은데 넘어서면 full이라고 함. 보아하니 bss에 ptr을 저장하는 모양인데, 앞에서부터 비어있는 순으로 내어주는듯. 아 자세히 보니 bss에는 mmap주소만 저장하고 mmap한곳에 싹다 저장하는거구나 암튼 별일없으면 size of heart받고, (read_input은 int인데 input은 long임ㄷㄷ) 그게 0x100넘으면 안됨. 만약 read_input에 음수를 줘도 input이 unsigned라서 저 검사에 걸릴듯. 202018부터 48(0x..