전체 글 102

[프로젝트] PE 악성코드 분석(Dgrep.exe)

악성코드 분석 연습을 위해 악성코드 샘플(네트워크 행위X)를 제공받아 분석을 진행하였다. 기초분석, 정적분석, 동적분석순서로 악성코드 분석을 진행하였으며, 악성코드 분석 보고서 작성도 진행하였다.Word를 기반으로 보고서 작성하는 것은 처음이라서, 쉽진 않았지만 Word로 작성하는 연습을 통해서 해당 도구에 익숙해지는 연습을 해야겠다는 생각이 들었다. Dgrep.exe 악성코드는 네트워크 행위를 하지 않아서, 악성코드 동적 분석을 깊게 할 수 없고 탐지패턴을 만들 수는 없었다. 하지만, 정적분석 공부를 할 때 많은 도움이 됐던 샘플이다. 결론적으로 해당 실습을 통해서 악성코드 분석 도구 사용해서 분석을 하는 사용법들을 배울수 있었고, 악성코드 분석 보고서를 작성해 보면서 보고서 작성 능력도 기를 수 있었다.

Security 2024.07.18

악성코드 탐지: 정탐, 오탐(False Positve), 미탐(False Negative)

정탐, 오탐, 미탐, 과탐은 보안관제업무에서 자주사용되는 용어이다. 1. 정탐, 오탐, 미탐이란?정탐은 정상적으로 탐지하는 경우로 공격이 들어왔을때 공격이라고 탐지하거나 공격이 아닌것이 들어왔을때 공격이 아니라고 탐지하는 경우를 의미한다. 오탐(False Positve)은 잘못 탐지한 경우로 공격이 들어왔는데 공격이 아니라고 탐지하거나, 공격이 아닌데 공격이라고 탐지하는 경우를 의미한다. 미탐(False Negative)은 탐지를 하지 못한 경우로 공격이 들어왔는데 탐지하지 못하는 경우를 의미한다. 2. 오탐과 미탐의 차이오탐과 미탐은 헷갈리는 용어로 두 용어를  구분하는 기준은 탐지활동을 했는지 여부에 따라 분류할수있다. 탐지활동을 했으면 오탐, 탐지활동을 하지 않았으면 미탐이다. 또한 미탐은 공격이 ..

Security 2024.07.17

네트워크 패킷 모니터링을 위한 Snort 환경 구축

Snort 환경을 구축하기 위해서는 다양한 프로그램을 설치해야한다. 설치 과정에서 버전 차이로 인한 호환성 문제와 구성파일 수정 과정에서 잦은 오류가 발생할수 있으므로, 차분하게 시간여유를 가지고 진행하는것이 좋다. 가상환경: VMware Workstation Pro 17운영체제: Windows 7 Professional K설치한 프로그램: Winpcap 4.1.3, Snort 2.9.2.3, Xampp 1.7.1, Base 1.4.5 , adodb-5.20.20, Notepad++ 1. 클라이언트, 서버 환경 구성1.1 server, client 가상환경 설치VMware 설치 방법과 Windows 7 Professional K 과정을 정리하였으나, Windows 7 지원이 종료된지 오래되어 크롬 설치과..

Security 2024.07.17

스노트(Snort) 룰 작성을 위한 개념

1. 스노트(snort)란?snort는 NIDS/NIPS 도구로, 네트워크 패킷을 모니터링 하여 악성 활동을 탐지하고 차단할수 있는 오픈소스 도구이다. 여기서 NIDS는 네트워크 침입 탐지 시스템, Network Intrusion Detection System을 의미하고,  NIPS는 네트워크 침입 방지 시스템, Network Intrusion Prevention System를 의미한다.  2. 스노트 룰 작성(Snort Rule Sigture)네트워크 패킷을 탐지하기 위해서는 룰 시그니처를 작성해야 한다. snort 시그니처는 크게 룰 헤더와 룰 옵션으로 나뉘며, 룰 헤더에서는 룰 발생 조건을 작성할 때 어떤 행위를 할 것인지 작성하고 룰 옵션에서는 룰 헤더에서 표현하지 못한 세부적인 행위와 조건을 작..

Security 2024.07.15

Wireshark 실습: TCP

1. TCP 프로토콜 분석Wireshark를 활용해서, TCP의 연결설정, 연결해제, 재전송 과정을 분석한다.  1.1 TCP 연결 설정(3-way-handshaking)클라이언트인 192.168.0.1⁠과 서버 ⁠10.10.10.1⁠이 TCP 연결을 하는 과정이다.  1) SYN 패킷 분석SYN 요청을 보내는 No.1 패킷에 분석을 진행하였다.출발지 포트는 49859에서 도착지 포트는 80번 포트로 패킷 전송(클라이언트는 동적 포트 번호 중에서 임의의 포트 번호로 할당됨) 실제 순서 번호는 3588415412로 설정되어있는것을 확인(와이어 샤크에는 보기 편하도록 상대적인 순서 번호를 제공한다.) SYN 플래그 비트도 1으로 설정되있는것을 확인  2) SYN + ACK 패킷 분석SYN + ACK 요청을 ..

Back-End/Network 2024.07.11

HTTP프로토콜 분석(Wireshark)

1. HTTP 프로토콜 분석wireshark를 이용해, HTTP 프로토콜과 헤더 구조를 분석한다. 웹 브라우저를 열고 http://info.cern.ch/를 입력했을때 캡처된 패킷이다. HTTP 패킷은 요청을 하는 패킷과 응답을 하는 패킷으로 나뉜다. No.1 패킷은 요청을 하는 패킷으로 Request Method로 GET요청을 사용하고 있으며, 자주 사용되는 버전인 HTTP 1.1을 사용하고 있음을 Request Version에서 확인할수 있다. 또한 Host 헤더에서 요청을 보낸 호스트가 info.cern.ch이며, Connection이 Keep-alive라는 것을 통해 지속적인 연결을 필요로 하고 있음을 파악할수 있다. *\r 는 행의 앞으로 이동하라는 의미이고, \n는 다음 행으로 이동하라는 의미..

Back-End/Network 2024.07.11

Wireshark 실습: IPv4 단편화 + ICMP

1번부터 7번까지는 호스트 10.0.0.1이 10.0.0.2에게 패킷을 전송하는 과정  8번부터 14번까지는 호스트 10.0.0.2이 10.0.0.1에게 패킷을 전송하는 과정 1. IPv4 프로토콜 분석 출발지 주소(Source Address)는 10.0.0.1이고, 도착지 주소(Destination Address)는 10.0.0.2인것을 확인  식별자 값이 0x2c2e(11310)으로 확인(1번부터 7번 패킷은 본래 하나의 데이터 덩어리가 단편화 된 것이므로 식별자는 동일함) 단편화된 다음 패킷이 존재한다는 의미의 MF(More fragments) 플래그가 설정되어있음을 확인(1번패킷부터 6번패킷까지 MF 플래그가 설정되어있음) 해당 패킷 이후에는 더 이상의 단편화된 패킷이 없으므로 MF 플래그가 활성..

Back-End/Network 2024.07.08

AWS SAA-C03 합격후기

AWS SAA-C03에 턱걸이로 한번에 합격하였습니다! 남들에겐 별거 아닌 자격증이겠지만, 취득하니 뿌듯합니다 :)1. 학습 기간 및 계획저는 약 2개월 동안 AWS SAA-C03를 준비했습니다. 돌이켜 보면, 더 효율적으로 공부할 수 있었을 것 같습니다.  학습 자료로는 Udemy 강의, 'AWS 구조와 서비스' 교재, 그리고 AWS 기출문제(덤프)를 활용했습니다. 처음에는 인기 있는 Udemy의 AWS SAA 강의를 듣고 덤프를 풀 계획이었습니다. 하지만 강의 분량이 예상보다 많았고, 내용 이해에 어려움을 겪었습니다. 이에 강의 시청을 중단하고 'AWS 구조와 서비스' 교재를 통해 AWS의 기본 개념을 이해하기 시작했습니다. 이 과정에서 AWS를 제대로 이해하기 위해서는 네트워크, 서버리스, 가상화,..

Cloud/AWS 2024.06.30

PEview(정적 분석 도구)

1. PEview란?Window 용 실행 파일인 PE( Portable Executable )의 구조를 분석할 수 있는 도구이며, 주로 파일시그니처, 언패킹 확인,  타임스탬프 정보 확인등을 파악할때 활용한다.  2. PEview 활용 예시여러 섹션들 중에서 가장 주요하게 살펴볼 섹션은 IMAGE_NT_HEADERS이다.2.1 파일 시그니처 확인IMAGE_NT_HEADERS의 Signature를 통해서 해당 파일이 PE 파일임을 확인할 수 있다. 2.2 언패킹 확인 Virtual Size와 Size of Raw Data값이 같다는것을 통해 언패킹된 파일임을 확인할 수 있다.  패킹된 파일은 Virtual Size와 Size of Raw Data값의 차이가 크다는 것을 확인할 수 있다. (패킹된 파일은 두..

Security 2024.05.29

악성코드 분석 도구

악성코드 분석은 도구에 의존하기 때문에, 다양한 도구를 사용해 보면서 자신에게 맞는 도구를 찾는 것이 중요하다. 악성코드 분석 과정은 기초 분석, 정적 분석, 동적 분석의 순서로 진행되며, 각 단계에서 사용되는 주요 도구들을 간략하게 정리했다. 1. 기초분석기초분석은 정적분석과 동적분석에 필요한 정보들을 수집하는 단계이다.대표적인 기초분석 도구로는 'VirusTotal'을 사용한다.  VirusTotal에 대한 자세한 사용법과 주의사항은 아래 글에 작성하였다. VirusTotal📌VirusTotal이란? 의심스러운 파일, 도메인, IP, URL을 분석해주는 웹사이트 악성코드 기초분석에 활용되며, 기존에 동일한 샘플코드들이 존재했는지 빠르게 확인하는데 주 목적 여러 회사의 안티rybbit-life-deb..

Security 2024.05.15