<div><a target="_blank" href="http://inaz2.hatenablog.com/entry/2014/03/14/151011" target="_blank">http://inaz2.hatenablog.com/entry/2014/03/14/151011</a></div> <div>이 사이트에 있는 스택 버퍼 오버플로우 공격을 <span style="font-size:9pt;">발표용으로 해 보고 있습니다.(일본어인데 크롬 번역이 잘 되네요.)</span></div> <div>그런데 블로그에 있는 소스를 그대로 가져와서 실행하고 있는데</div> <div>뭔 짓을 해도 쉘 취득이 안 되네요.</div> <div>ASLR, SSP, DEP 전부 해제하고 실행시켜 봤습니다만 똑같네요...</div> <div>어떻게 해야 쉘을 얻을 수 있을까요?</div> <div> <div style="text-align:center;"><img src="http://thimg.todayhumor.co.kr/upfile/201706/149711982833c83e69395846dc943c35db29676c4a__mn13516__w727__h275__f54981__Ym201706.png" width="727" height="275" alt="123.png" style="border:none;" filesize="54981"></div><br></div> <div>참고로 파일 소스는</div> <div> <div style="text-align:center;"><img src="http://thimg.todayhumor.co.kr/upfile/201706/1497119915f91d5a46b1304befa5b21c01dfcde8d0__mn13516__w292__h194__f14181__Ym201706.png" width="292" height="194" alt="1.png" style="border:none;" filesize="14181"></div>취약성 있는 파일이 이 소스이고</div> <div>익스플로잇 코드는</div> <div> <div style="text-align:center;"><img src="http://thimg.todayhumor.co.kr/upfile/201706/1497120095343b38a1559c4efca7e2784ca3dceb3a__mn13516__w734__h319__f32906__Ym201706.png" width="734" height="319" alt="2.png" style="border:none;" filesize="32906"></div>이겁니다.</div> <div>여기 분들이야 전문가시니 코드만 봐도 다들 아시겠지만 간단히 설명하자면</div> <div>첫번째 인수에 버퍼길이, 두번째 인수에 버퍼의 선두주소를 찾아서 계산된 데이터를 a.out의 첫번째 인수로 세팅해서 파일을 실행시키는 겁니다. a.out은 저 위의 단순한 파일이구요.</div> <div><br></div> <div>그런데 저 홈페이지에서 좀 의문이 드는 점이</div> <div>DEP를 무효화 시킨 후에 실행하면</div> <div><br></div> <div><pre class="code" style="padding:15px;background:#fafafa;font-family:Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;color:#5a5a5a;font-size:13px;">$ gcc -fno-stack-protector -z execstack bof.c </pre><pre class="code" style="padding:15px;background:#fafafa;font-family:Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;color:#5a5a5a;font-size:13px;">$ python exploit.py 100 0xbffff68c buf = 0xbffff68c </pre><pre class="code" style="padding:15px;background:#fafafa;font-family:Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;color:#5a5a5a;font-size:13px;">(snip) </pre><pre class="code" style="padding:15px;background:#fafafa;font-family:Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;color:#5a5a5a;font-size:13px;">$ id </pre><pre class="code" style="padding:15px;background:#fafafa;font-family:Monaco, Consolas, 'Courier New', Courier, monospace, sans-serif;color:#5a5a5a;font-size:13px;">uid=1000(user) gid=1000(user) groups=1000(user) $</pre></div> <div>여기서 쉘을 취득했다고 나오는데 쉘을 취득했다고 하면 여기 부분에서 root유저로 나와야 하는 거 아닌가요?</div> <div>블로그의 다음 내용부터는 제대로 #요걸로 써놨는데 요 부분에서는 이게 잘못 쓴 거 아닌가...해서요.</div> <div><br></div> <div>뭔가 쓸데없어 보이는 내용이 많았습니다만, 요지는 저게 왜 실행이 안 되는 걸까...하는 겁니다.</div> <div>아시는 분은 힌트라도 주시면 감사하겠습니다.</div> <div><br></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.