목록전체 글 (57)
Cmd 명령어 윈도우+x -> Cmd 실행 ping /? ping 사이트명 or ip주소 -n count 사이트 주소 (에코 요청 수 만큼 통신 테스트) -t 사이트 주소 (중지할 때까지 ping 실행. 중지: Ctrl+C) ping -f -l size 사이트 주소 (전송할 버퍼 크기로 통신 테스트) netstat -a (소켓 상태 표시) -an (모든 연결 표시) / -bn (관련된 실행파일까지 표시) -aon | find "포트번호" (특정 포트 / -p (특정 전송 프로토콜의 상태표시) -e 10 (이더넷 통계 표시) / -r (알려진 경로의 상태 표시) -s (프로토콜별 통계 표시) / -e (내 컴퓨터의 송수신 패킷 표시) -f (특정 주소 유형의 패킷에 대한 전송 산태 표시) arp : ARP..
PE: Portable executable PE 파일 종류 실행 계열: exe, scr 드라이버 계열: sys, vxd 라이브러리: dll, ocx, cpl, drv 오브젝트 계열: obj Virtual Address: 가상주소 Relative Virtual Address: 상대가상주소 VA = Imagebase + RVA PE Header의 구성: DOS Header: 64바이트, 맨 앞에 4바이트는 e_magic값의 ASCII코드 마지막 4바이트에 PE Header 시작주소 DOS Stub: 도스 실행 불가하다는 메시지 포함.. PE Header (Image NT Header): 맨 앞 4바이트 PE문자 ASCII코드, 파일헤더 20바이트, 옵셔널 헤더 224바이트 Section Table: 40바이..
gcc -fno-stack-protector -mpreferred-stack-boundary=2 -o filename filename.c -m32 (32바이너리로 컴파일) -mpreferred-stack-boundary=2 (remove stack dummy) -z execstack (executable stack) -fno-builtin (builtin 함수 사용) Gdb 명령어 외우기 .. b *main : 메인 시작점에 breakpoint i r : info register (레지스터 상태) x/4wx, x/wx, x/8wx (메모리 검사) x/x 바이너리로 출력 x/s 스트링으로 출력 x/i 명령어로 출력 Si : 다음 인스트럭션(명령어)을 실행하는데 만약 함수라면 함수 안으로 들어간다. Ni :..
시스템해킹 함수호출과 스택:함수 인자들, ret(복귀주소) push함수 프롤로그 과정 수행(스택프레임 push, ESP, EBP 초기화)EBP는 시작지점(스택프레임의 바닥), ESP는 계속 스택의 꼭대기를 가리킴 (push, pop에 따라 변화)함수 인자는 역순으로 스택에 저장 함수 리턴 시 함수 에필로그 과정 수행스택프레임에 백업된 EBP값으로 EBP변화ESP는 계속 pop수행 -> 복귀주소 ret로 EIP값 변화, 인자정리.. 리턴값은 EAX에 저장인자 접근은 EBP를 기준으로 +@하여 접근 (offset)EIP는 CODE를 가리킴 한 줄씩 수행 EIP는 직접 변경할 수 없지만다른 방법으로 변경해서 프로그램의 흐름을 바꿔 악성코드를 실행시킬 수 있을 때 해킹한다라고 말할 수 있음 어셈블리어: 저수준 언어