유닉스 계열 NIC 속도 설정

NIC 설정 확인 #ethtool [인터페이스명] ex:)#ethtool eth0 NIC 설정 변경 #ethtool -s [인터페이스명] [속도] [전송모드] [자동설정여부] ex:)#ethtool -s eth0 speed 100 duplex full autoneg off

mov EDI,EDI (Hot Patching)

DLL 등을 리버싱하다보면 함수가 5개의 NOP 코드와 함께 MOV EDI,EDI로 시작되는데, 이 코드는 핫패칭을 위해 존재하는 코드이다. 핫 패칭은 필요한 코드를 시스템 재부팅 없이 즉각 메모리에 적용할 수 있는 기술로써, mov EDI,EDI에 앞의 5바이트 NOP 코드를 가리키도록 short JMP 명령을 패치하고, 5바이트 NOP 코드에 실제 long jmp 명령을 넣을 수 있게 MS에서 추가로 삽입한 코드이다. ※5바이트만 있으면 32비트 메모리 … Read more

LEA 명령과 MOV 명령의 차이점

LEA(Load Effective Address) 명령은 본질적으로 산술명령이다. 어떤 메모리 주소에 접근하는 작업을 수행하는 것이 아니라 일반적으로 주소를 계산하기 위해서 사용된다. 예를 들어  ESP : 0x0012FFBC  0x0040205E : “HELLO” 인 경우에  mov EBP,ESP  push 0040205E  mov EAX,[EBP-4]  lea EBX,[EBP-4] 위 명령을 실행할 경우  EAX : 0040205E  EBX : 0012FFB8 의 값을 가지게 된다. 즉, EAX는 EBP-4가 가리키는 … Read more

IPTables 설정

※체인 관련 옵션 -F iptables 체인 초기화 (체인 이름을 생략할 경우 룰 완전 초기화) -N 새로운 체인 생성 -X 체인 제거 -P 체인 정책 변경 (ACCEPT : 허용, DROP : 패킷 폐기) -A 해당 체인에 새로운 규칙 추가 -I 해당 체인 중간에 규칙 삽입 -R 해당 체인 위치의 규칙 내용 변경  -D 해당 체인의 특정 규칙 … Read more

플래그 설정 명령어

연산자 예시 설명 stc stc 캐리 플래그(CF)를 1로 설정한다. clc clc 캐리 플래그(CF)를 0으로 설정한다. std std 방향 플래그(DF)를 1로 설정한다. cld cld 방향 플래그(DF)를 0으로 설정한다. sti sti 인터럽트 플래그(IF)를 1로 설정한다. cli cli 인터럽트 플래그(IF)를 0으로 설정한다.

PE 구조

PE(Portable Excutable) 구조-PE포맷은 프로그램 실행 파일의 제일 첫 부분에 존재한다. DOS HeaderDOS StubPE File HeaderOptional HeaderSection TableSections IMAGE_DOS_HEADER IMAGE_NT_HEADER PE\0\0 IMAGE_FILE_HEADER IMAGE_OPTIONAL_HEADER IMAGE_SECTION_HEADER DOS Header-도스 헤더 부분은 IMAGE_DOS_HEADER라는 구조체로 구성되어 있다. typedef struct _IMAGE_DOS_HEADER{ WORD e_magic; //magic number WORD e_cblp; //Bytes on last page of file WORD e_cp; //Pages in file WORD e_crlc; //Relocations WORD … Read more

어셈블리 코드 해석

원본 : http://www.daniweb.com/forums/post382693.html#post382693 간단한 C++ 코드의 어셈블리 코드와 해석 -C++ 코드- int main() {         short x=6;         short y=9;         short z;          z = x+y;         return 0; } -어셈블리 코드-         .file    “CSCILab03-1.cpp” ; This is the input source file.  This will probably make it into the ; assembler output as some kind of debug record for … Read more

Snort 명령 사용

-Snort는 snort.conf 파일 또는 명령행 옵션을 통해 여러 가지 명령을 설정할 수 있다. ex:)config nolog snort.conf 명령행 옵션 설명 alertfile 없음 Snort가 발생시킨 모든 경고를 저장할 파일을 지정할 수 있다. bpf_file -F BPF 포맷 필터를 포함하는 파일을 지정할 때 쓰인다. checksum_mode 없음 패킷 체크섬을 검사할 패킷의 종류를 지정할 때 쓰인다. 들어 갈 수 있는 값에는 … Read more

Snort 변수

변수의 정의 종류 사용법 예시 일반 변수 var 변수명 값 var DNS_SERVER 203.248.252.2 배열 var 변수명 [값1,값2] var INTERNAL_NETS [10.1.100.0/24,10.1.0.0/16] 동적 변수 var 변수1 값 var 변수2 $변수1 var DNS_SERVER 203.248.252.2 var MY_DNS $DNS_SERVER 동적 변수2 var 변수1 값 var 변수2 $(변수1:기본값) ※변수1이 존재하지 않는 경우, 변수2는 기본값 적용 var DNS_SERVER 203.248.252.2 var MY_DNS $(DNS_SERVER:10.1.1.2) … Read more

Snort 로그

Snort 로깅 옵션 옵션 설명 -l 로그 파일을 저장할 디렉터리 경로 -h 홈 서브넷 -b 로그를 2진 형태로 저장한다. -L 2진 로그 파일 이름 snort -dev -l /var/adm/snort/logs -h 192.168.1.0/24 -위 옵션을 사용할 경우 /var/adm/snort/logs 디렉토리에 해당 IP 주소명의 디렉토리가 생성되고 세션별로 파일이 생성된다. ex)TCP:3039-80 (TCP 프로토콜,출발지 포트:3039, 목적지 포트 80) ※로그를 2진 형태로 저장하면 … Read more

바로가기