반응형



이번 문제는 환경 변수를 지워버립니다. 

그리고 리턴 주소의 맨 앞 주소가 스택을 가리키고 있습니다.

그러므로 기본적인 BOF를 사용해야 합니다.


그러기 위해서는 버퍼의 정확한 위치를 알아야 하므로 tmp 폴더로

orc를 복사하여 실행시킵니다.



그러면 core가 덤프가 되었다고 하는데 

이 core는 gdb에서 오류가 난 이유를 찾을 수 있게 됩니다.



이렇게 오류 날 당시의 레지스터 까지 볼 수 있습니다.

덤프를 통해 쉘코드의 위치를 찾겠습니다.



쉘코드의 위치는 0xbffffc2b입니다



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

LOB 6. Wolfman  (0) 2015.09.25
LOB 5. Orc  (0) 2015.09.23
LOB 3. Cobolt  (0) 2015.09.17
LOB 2. Gremlin  (0) 2015.09.12
LOB 1. Gate  (0) 2015.09.08
반응형


저번 문제에서는 인자로 값을 받았지만

이번에는 표준 입출력으로 입력을 받습니다.


다른 프로그램에게 값을 넘겨줄 때는 

BASH쉘에서는 |(파이프)를 사용합니다.

|(파이프)는 앞 프로그램의 출력을 뒷 프로그램의

입력으로 넘겨줍니다.



이제 2번 때처럼 공격을 해 보았습니다.



하지만 BASH쉘은 열리지 않습니다.

이 이유는 제가 생각하기에는 BASH는 열렸지만

표준 입출력이 goblin의 입출력을 표시하고 있으므로

화면에 표시가 되지 않는 것입니다.


그러므로 새롭게 표준 입출력을 제 지정하는 cat을 추가하면 됩니다.



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

LOB 6. Wolfman  (0) 2015.09.25
LOB 5. Orc  (0) 2015.09.23
LOB 4. Goblin  (0) 2015.09.20
LOB 2. Gremlin  (0) 2015.09.12
LOB 1. Gate  (0) 2015.09.08

+ Recent posts