Liea
'보안공부' 태그의 글 목록 (3 Page)

보안공부

② 공부/[Reversing]

Redhat gdb 사용하기(1)

main: push1 %ebp//프롤로그, 메인함수 프레임 생성 movl %esp, %ebp//프롤로그, 메인함수 프레임 생성 subl $4, %esp//int c = 10; esp에서 4를 뺀 값을 esp에 넣음, esp가 main의 SFT 공간 위로 공간이 생김 movl $10, -4(%ebp)//ebp로부터 4칸 떨어진 위치에 10이라는 값을 넣음 pushl $2 pushl $1 call myfunc addl $8, %esp movl %eax, %eax movl %eax, -4(%ebp) xorl %eax, %eax jmp .L2 .L2: leave//에필로그 작업 함수 ret//에필로그 작업 함수 #gcc -S -o sample.a sample.c //컴파일시 어셈블리어로 컴파일 ㅇ GDB - 컴..

② 공부/[Reversing]

ESP, EBP, 프롤로그, 에필로그 이해하기 예제

sample.c #include int myfunc(int a, int b) { char buf[10] = "abcd"; return a + b; } int main(int argc, char *argv[])//caller { int c = 10; c = myfunc(1, 2);//callee return 0; } - 함수 호출 후에는 call 명령어가 오고, call (myfunc함수에 해당하는 이름)이 저장되어 있음 à push eip - main 함수의 myfunc() 호출 후 다음 문장은 return 0; 이므로, EIP값이 자동으로 return 0;을 하게끔 바뀌므로, 해당 값을 myfunc() 프레임의 RET공간에 저장함 - RET에 저장 후 jmp를 수행하면 함수 프롤로그가 실행되고, pus..

② 공부/[Reversing]

레지스터, 함수프레임(프롤로그, 에필로그) 간단 정리

ㅇ 레지스터 : CPU내에 있는 기억장소 ㄴ ESP(Stack Pointer) : 현재 스택의 위치가 어디인지 갖고 있음 ㄴ EIP(Instruction Pointer) : CPU가 실행될 명령어가 어디 있는지 해당 주소를 갖고 있음 (다음번 실행할 명령어의 위치) ㄴ EBP(Base Pointer) : 각 함수프레임의 기준 위치 (함수 호출이 끝나면 해당 위치로 리셋해줘야 함) ㄴ EAX~EDX : 산술, 논리 연산의 결과값을 임시로 보관하는 레지스터 EAX : 함수 리턴값 저장 ㄴ ESI, EDI : 반복, 문자열 ㄴ 상태 레지스터 : 비교, 점프, 반복 ㅇ 함수프레임, 프롤로그, 에필로그 프롤로그 : 함수가 호출되었을 때 RET, SFP 영역을 만드는 작업 에필로그 : 함수 실행 완료 시 함수가 할..

② 공부/[Reversing]

어셈블리어 정리

ㅇ 어셈블리어 ㄴ 어셈블리어 표현방식 : AT&T, Intel AT&T : 리눅스 - OPCODE 원본, 사본 - cp file1 file2 //file1을 file2로 복사함 Intel : 윈도우 - OPCODE 사본, 원본 ㄴ add, sub x = x + y; add x, y //x와 y를 더해서 x에 넣음 x = x - y; sub x, y //x - y를 해서 x에 넣음 ㄴ mov, lea, (movl, movw, movb) à 둘 다 복사 명령어지만, mov는 주소에 해당하는 값을 lea는 주소값을 가져옴 (movl, movw, movb) à 각 옮길 값의 사이즈를 4, 2, 1 바이트 만큼 복사함 x = y; mov x, y //y에 있는값을 x로 복사(이동) ***à 목적지가 어떤 피연사인..

② 공부/[Web hacking]

해당 사이트 쿠키 빠르게 확인하는 방법

방법1. 해당 사이트에서 주소창에 javascript:document.cookie 를 입력해서 알아낸다. 방법2. F12(개발자도구)의 Console을 이용하여 확인한다. 명령어는 위에서 사용한것처럼 document.cookie로 같다.

② 공부/보안 관련

[ Nikto ] Potentially interesting archive/cert file found. 관련 정리

Nikto 란? Nikto는 리눅스/유닉스 계열 시스템에 설치되는 웹 서버나 웹 기반의 응용 프로그램의 취약성을 점검할 수 있는 프로그램이다. Nikto 사용? 기본적으로 스캔 명령어는 다음과 같다. # nikto -h 프로그램의 옵션은 다음과 같다. 본론 스캔을 하다 보면 다음과 같은 문장이 반복해서 뜨는 것을 보았다. Potentially interesting archive/cert file found. 알아보니 Nikto에서 404 -> 200 갑지를 발견하지 못할경우 오탐지가 발생하여 생긴다고 한다. 스캔 결과의 대부분 항목이 다음과 같이 애플리케이션의 취약한 파일을 참조하는 경우 애플리케이션이 실제로 파일을 전달하지 않고 모든 요청에 대해 상태 코드 200을 반환하도록 구성되어 있음을 의미한다...

개인공부

필요한 공부 내용 정리

보호되어 있는 글입니다.