티스토리 뷰

pwnable/LOB

[LOB] orc -> wolfman write-up

ba0bab 2018. 1. 27. 04:20




LOB orc -> wolfman


id : orc

pw : cantata


코드입니다.


아까와 다른 점이 있다면 똑같이 환경변수를 초기화 해주지만


이번에는 버퍼도 0으로 초기화를 해줍니다. 따라서 쉘코드를 버퍼안에 못 넣겠네요.


그렇다면 ret뒤에 공간을 이용하면 가능하지 않을까요.


일단 분석을 하기위해서 tmp라는 폴더를 만들고 옮겨서 분석하겠습니다.


어셈블리 코드입니다. 중요한 부분만 보도록 하겠습니다.


스택프레임을 44만큼 형성하고 있습니다.




ebp-40부터 strcpy하는군요


따라서 메모리구조는


i(4) | buf(40) |sfp | ret


이 되겠습니다.


저희는 ret뒤에 공간을 이용할 것이니 주소를 구해보도록 하겠습니다.



이렇게 해보겠습니다.


0000000이 보이시나요 버퍼가 0으로 초기화 된 모습입니다.


\xbf\xbf\xbf\xbf는 제가 임의로 집어넣은 ret값이죠.


저는 이 뒤에 값을 이용할 것이니


대략 0xbffff9cc를 주소로 잡고 공격해보겠습니다.



쉘이 얻어졌습니다.


실제파일에 공격을 해보겠습니다.


권한을 획득했습니다.


wolfman의 키는 love eyuna 입니다.



'pwnable > LOB' 카테고리의 다른 글

[LOB] darkelf -> orge write-up  (0) 2018.01.27
[LOB] wolfman -> darkelf write-up  (0) 2018.01.27
[LOB] goblin -> orc write-up  (0) 2018.01.27
[LOB] cobolt -> goblin write-up  (0) 2018.01.26
[LOB] gremlin -> cobolt write-up  (0) 2018.01.26
Comments