전체 글
-
RTL Chaining 공부 1정보보안/포너블 2018. 5. 18. 08:32
RTL Chaining 공부 1 ROP에 한 발짝 더 RTL 얼른 보고 이번에는 RTL Chaining을 공부하기로~! 이번에도 http://d4m0n.tistory.com/80에서의 D4m0n님 블로그의 설명대로 취약점이 있는 코드를 공격하도록 하겠다. RTL Chaining이란? RTL 기법을 응용하여 함수 여러 개를 연계하여 호출하는 것 공격하기 아래와 같이 실행되도록 만든 다음에... read()로 실행할 명령어를 입력받음 -> bss 영역에 저장 -> system()으로 실행 -> exit()으로 종료하도록 하기 ...실행 흐름을 바꾸는 데 성공했으면 /bin/sh를 입력(전달)해서 쉘 따기 공격할 코드 이전 글과 공격할 코드가 같다. #include #include int main(void){..
-
pwnable.kr 3번 bof : pwntools로 자동으로 브포 때리면서 풀기정보보안/포너블 2018. 5. 17. 21:04
pwnable.kr 3번 bof : pwntools로 자동으로 브포 때리면서 풀기 몇 달 전이였나 블로그에 pwnable.kr 3번 문제에 대한 Write-Up을 올린 적 있다. 구름 ide를 뒤지다 얼마 전 pwntools를 배우면서 짠 이 문제의 exploit을 발견해서 올려두려고 한다. 나라는 늅늅이는 분석을 엄청 못하니까 gdb로 '음 오프셋을 뭘로 해야 할까?^^' 하면서 찾기가 어렵다. 그럴 때는 브루트포싱이 답이다. excessive brute-forcing은 자제하라고 공지에 나와 있으니까 그냥 순수하게 40~59까지만 돌려보자(이미 답을 알고 있으니...) from pwn import * for i in range(40, 60): r = remote("pwnable.kr",..
-
RTL 공부 1정보보안/포너블 2018. 5. 17. 20:17
RTL 공부 1 어쩌다가 RTL? 대체 ROP가 뭐지? -> ROP 배우려면 RTL이랑 RTL chaining, GOT overwrite 배워야 한다네 -> RTL부터 배워 볼까? 어떻게 배우지? 읔엨 이론 사실 정의는 안다고! -> 근데 정작 실전에서 하지는 못함(누가 문서만 훑어보랬냐) 정의 RET(return address)에 메모리에 적재하는 라이브러리 함수 주소를 덮어씌워서 실행 -> system()의 주소, /bin/sh 문자열의 주소 구하고 -> 잘 BOF 해서 RET 덮어씌우면 Profit!!! 사실 Profit이라는 말을 쓰고 싶어서 함 해봄(킹갓해커분들이 쓰시기에...) 예시 스택에 올린 쉘코드를 실행하지 못하게 하는 DEP 같은 보호기법이 있을 때 라이브러리에 있는 system()으로..
-
TensorFlow 설치후 import시의 ImportError 해결프로그래밍/개발 2018. 3. 25. 17:10
(tensorflow) C:\Users\JunhoYeo>pythonPython 3.5.5 |Anaconda, Inc.| (default, Mar 12 2018, 17:44:09) [MSC v.1900 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> import tensorflow as tfTraceback (most recent call last): File "C:\ProgramData\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swi..