목록list (398)
y0u_bat
Mac 기준으로 설치방법 1. https://www.macports.org macports 설치 2. sudo port install xorg-server 3. sudo port install gr-osmosdr +full 4. sudo port install gr-fosphor 5. hackrf_info (hackrf restart 해줘야됩니다) 7. sudo port install gqrx 8. sudo port install gnuradio +full 우분투 기준 설치방법 1. sudo apt-get install gnuradio gr-osmosdr hackrf gqrx
hackrf one 을 샀습니다 ㅎ 공부하면서 블로그에 포스팅할 예정입니다.
taint progation analysis유저인풋의 data flow를 죄다 트래킹해서destination , source instruction pointer 등에영향을 주는 포인트를 알아냄tainted destinationtainted sourcetainted instruction pointer sysbolic execution Engine -> klee & constraint solver -> z3 (값구해주는거)—> path explosion concolic execution —> conrete excatuion + symbolic executionconc(rete)+(symb)olic patch analysis | 1day analysis-> binary | sure code diffing vu..
int ptrhead_create(phtread_t *thr_id, const pthread_attr_t *attr, void *함수명,void *arg); // 쓰레드 생성 3번째 인자가 쓰레드에 쓰일 함수 int pthread_exit(void *return); // 현재 실행하고 있는 쓰레드 종료할때 사용 int pthread_join(pthread_t thr_id,void **thread_return); // 쓰레드 종료될때까지 기다리다 특정 쓰레드 종료시 자원해제 pthread 쓰레드 예제1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859#include..
chatting_client.cpp123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899#include #include #include #include #include #include #include #include #include #define BUF_SIZE 1024 static pthread_t thr;static int thr_id;static bool thr_exit = true;static char recv_dat..
Server.cpp 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889#include #include #include #include #include #include #include #include #include #include #define BUF_LEN 128int main(int argc,char *argv[]){ char buffer[BUF_LEN]; struct sockaddr_in server_addr,client_addr; char temp[..
링크드리스트 Linklist(추가,수정,삭제,검색,출력) 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158..
[CodeGate2015] BookStore 풀이 보호기법이 모두 걸려있다. 구조체 모양은 이렇게 생겼다. 처음에 famous_saying.txt 파일을 읽어온다.그다음 아이디와 패스워드를 검사한다. 이 함수 내부를 보면 파일을 읽어와서 printf로 출력해준다. 아이다를 뒤지다 보면 함수포인터를 2개 쓰고 있는걸 볼수있다. 이 함수 포인터를 파일을 읽는 함수로 덮고 쓰면 될거같다고 생각했다. 그런데 PIE환경이라 함수의 주소가 랜덤이다. 그래서 함수의 주소를 leak한다음 함수의 베이스주소를 구한다음 베이스주소 + file_read 함수의 오프셋 = file_read함수 이런식으로 구해줘야 된다. view를 보면 shipping이 1일때 func2함수포인터가 인자로 bookname 쓰고 함수를 호출한다..
[Plaid CTF 2014] pork 풀이! 저 함수를 보면 pork라는 계정이 있는지 확인한다. 그러므로 pork라는 계정을 추가 시켜줘야 된다. 그리고 sscanf로 입력한다. clienterror부분을 보면 저기 sprintf에서 buffer overflow가 일어난다. s 는 ebp-458이므로 sfp전까지가 0x458 = 1112바이트이다. 그런데 여기서 우리가 s에 입력하기전에 위 sprintf로 먼저 s에 내용을 채워주고 있다. 그러므로 우리가 입력하기전에 입력된것을 빼기위해 len해서 보면 92가 나오는걸 볼수있다. 전에 입력한걸 빼보면 1112 - 92 = 1020 즉 버퍼는 1020다. buffer 1020 | sfp 4 | ret 4 처음에는 그냥 nx가 안걸려있길래 read로 쉘코..
[CodeGate 2013] vuln200 풀이 여기 보면 처음에 메뉴에서 buf에 400바이트 입력받을수 있다. sub_8048eeb 함수에 첫번재 인자로 buf를 넘겨주고 2번재는 fd , 3번째는 buf에 입력한 길이를 넘겨준다. sub_8048eeb함수를 보면 memcpy에서 버퍼오버플로우 취약점이 터지게 된다. 우선 저기로 갈려면 메뉴에서 write을 입력해줘야된다. write + 페이로드 이런식으로 하면 되는데 저기 memcpy 보면 아까 입력한 버퍼값 +5부터 dest로 복사된다. 즉 write가 5글자니 그뒤 페이로드부터 복사된다는 뜻.! 이제 간단히 bind shellcode로 하던지 rtl로 하던지 하면 된다. from socket import *from struct import *fr..