본문 바로가기

해킹, 보안

(8)
네트워크 해킹 - ARP Spoofing 이론 및 실습 ARP (Address Resolution Protocol) : 주소 결정 프로토콜 네트워크 상에서 IP 주소를 MAC 주소로 대응시키기 위해 사용되는 프로토콜 컴퓨터는 아이피 주소로만 통신하는 게 아닌 MAC 주소도 같이 사용함. 컴퓨터 안에 실제로 있는 네트워크 카드의 일련번호를 쉽게 MAC 주소라고 생각하면 된다. 아래 그림처럼 통신을 할 때 B의 맥주소인 BB로 보내야지! 이런 식으로 통신을 한다. Spoofing : 사전적 의미로 속이다 라는 뜻. ARP Spoofing : 공격자가 의도적으로 특정 IP 주소의 MAC 주소를 자신의 MAC 주소로 변경하는 공격 이 공격을 통해 공격자는 도청이 가능하게 된다. Ex) A와 B가 통신을 한다. 공격자가 B의 MAC 주소 인척 A에게 자신의 맥주소를 ..
2021 TeamH4C Webinar - Network Hacking is too fun! 발표 자료 공유
[Immunity Debugger] Hello World 문자열 패치 ..........리버싱 기초 중에 기초인 문자열 패치를 해보겠다. 실습을 하기 위한 프로그램을 준비한다. #include void main() { MessageBox(NULL,L"Hello World!!",L"Hello World!!",MB_OK); } Immunity Debbger에서 메인 함수 진입 Hello World!!라는 문자열을 푸시하고 MessageBoxW를 호출한다 .Hello World!! 문자열이 로드된 곳을 찾아가 보자. 주소는 컴퓨터마다 모두 다르니 주의하시길 Hello World!! 가 보인다. Hello World!! 드래그해주고 오른쪽 클릭 -> Binary -> Edit을 눌러준다. 이창에서 Keep size 끄고 UNICODE에 원하는 문자열 넣어주고 OK를 눌러준다. 잘..
이미지 스테가노그래피 예제 스테가노그래피(Steganography)는 데이터 은폐 기술 중 하나이며, 데이터를 다른 데이터에 삽입하는 기술 혹은 그 연구를 가리킨다. 간단 예제 왼쪽이 원본이고 오른쪽이 스테가노그래피 이미지이다. 겉으로 보기에는 다른 점이 없다. HxD로 열어보자. 맨 뒤에 chanin-diary라는 문장이 추가되었다. 이런 식으로 이미지 파일의 바이트를 수정하거나 삽입할 수 있다. 많은 방법이 있지만, 나는 이미지 파일의 끝을 알리는 바이트(EOI) 뒤에 삽입했다. 확장자 별 EOI는 다음과 같다. JPG : FF D9 PNG : 49 45 4E 44 AE 42 60 82 : IEND®B`‚ 이런 식으로 EOI 뒤에 압축파일을 삽입하여 숨길 수도 있다. 심심할 때 한 번씩 해보면 재미있다.
[Immunity Debugger] reversing.kr 2번 Easy Keygen 문제 풀이 2020/07/20 - [해킹, 보안/리버싱] - [Immunity Debugger] reversing.kr 1번 Easy Crack 문제 풀이 [Immunity Debugger] reversing.kr 1번 Easy Crack 문제 풀이 프로그램의 비밀번호를 맞추는 문제이다. Immunity Debugger를 통해 동적으로 분석하였다. Immunity Debugger에서 EasyCrack.exe를 열어준다. 마우스 오른쪽 클릭 -> Search for -> All referenced text strings.. chanin-diary.tistory.com 이전에 1번을 풀었으니 이제 2번을 풀 차례이다. ReversingKr KeygenMe Find the Name when the Serial is 5B..
레지스터의 종류와 개념 범용 레지스터 (General Purpose Registrer) AX (Accumulator register) - 산술 연산에 사용 CX (Counter register) - 시프트/회전 연산과 루프에서 사용 DX (Data register) - 산술 연산과 I/O 명령에서 사용 BX (Base Register) - 데이터의 주소를 가리키는 포인터로 사용 SP (Stack Pointer register) - 스택의 최상단을 가리키는 포인터로 사용 BP (Stack Base pointer register) - 스택의 베이스를 가리키는 포인터로 사용 SI (Source Index register) - 스트림 명령에서 소스를 가리키는 포인터로 사용 DI (Destination Index register) - ..
함수 호출 규악 (Calling Convention) __cdecl Caller 매개 변수를 스택에 역순으로(오른쪽에서 왼쪽으로) 푸시합니다. __stdcall 호출 수신자 __fastcall 호출 수신자 매개 변수를 스택에 역순으로(오른쪽에서 왼쪽으로) 푸시합니다. cdecl C, C++ 기본 호출 규약 스택 정리 : 호출자 인자 전달 : 오른쪽에서 왼쪽 Example int __cdecl cdeclCall(int arg1, int arg2, int arg3); 스택 push arg3 push arg2 push arg1 CALL cdeclCall stdcall Win32 API 표준 호출 규약 스택 정리 : 피호출자 인자 전달 : 오른쪽에서 왼쪽 Example int __stdcall stdcallCall(int arg1, int arg2, int arg..
[Immunity Debugger] reversing.kr 1번 Easy Crack 문제 풀이 프로그램의 비밀번호를 맞추는 문제이다. Immunity Debugger를 통해 동적으로 분석하였다. Immunity Debugger에서 EasyCrack.exe를 열어준다. 마우스 오른쪽 클릭 -> Search for -> All referenced text strings 여기서 이 프로그램의 모든 스트링들을 볼 수 있다. 딱 봐도 Congratulation !! 이 제일 수상해 보인다. 더블 클릭해서 저 위치로 들어가 본다. 아직은 별로 나온 게 없다. 함수의 시작부분으로 가본다. GetDlgItemTextA 함수를 호출하는 게 보이고, 어디에 쓰이는지 모를 문자열들이 보인다. 함수가 시작되는 곳에 bp를 걸고, 한 줄씩 실행시켜본다. esp + 5 위치에 있는 값과 61을 비교한다고 쓰여있다. esp..