전체 글 60

[3장]동적 분석

이 글은 아래의 책을 읽고 공부 목적으로 작성됨.몬나파 K A, 「악성코드 분석 시작하기」 동적분석 : 악성코드 실행 후 다양한 모니터링 활동을 수행.-> 목표 : 악성코드 행위, 시스템에 끼친 영향과 관련된 실시간 데이터 수집. 여러 유형의 모니터링프로세스 모니터링 : 프로세스 활동 모니터링, 악성코드 실행 중 생성한 결과의 속성을 검사.파일 시스템 모니터링 : 파일 시스템 실시간 모니터링.레지스트리 모니터링 : 접근/수정된 레지스트리 키, 악성코드 바이너리가 읽거나 작성한 레지스트리 데이터 모니터링.네트워크 모니터링 : 시스템으로 유입되거나 외부로 나간 라이브 트래픽 모니터링. 랩 환경 설정 후, 분석 도구 호스트 머신에서 다운. 도구를 가상머신에 전송하거나 설치, 클린 스냅샷 생성.*스냅샷 : VM..

보안/악성코드 2025.04.08

[AhnLab]이메일 속 숨겨진 함정! 최신 피싱 공격 방법은?

2025년 2월 피싱이 전체 공격의 78%로, 가장 빈번한 위협 유형으로 확인.피싱 기법 : HTML 등의 스크립트 활용 / PDF 등 문서 파일 내 하이퍼링크 삽입 등  피싱 메일 중 한글로 구성된 사례 분류, 피싱 메일에서 자주 등장하는 키워드(일부 공개)-> 세금, 통관, 송장, 은행, 계산서 등 + 첨부파일에 html 문서  첨부 파일 포맷별 분석(2월 사례) : 피싱 페이지(FakePage), 문서 첨부 파일의 다운로더(Downloader) 및 정보 유출(Infostealer) 악성코드 문서 파일 내부에 external link를 삽입 -> 사용자가 문서를 실행하는 순간 악성 기능이 자동으로 동작하도록 설계된 사례有 피싱 공격 대응 방안의심스러운 첨부 파일 및 링크 주의이메일 보안 필터링 강화피..

[2장]정적 분석

이 글은 아래의 책을 읽고 공부 목적으로 작성됨.몬나파 K A, 「악성코드 분석 시작하기」정적분석 도구와 기법 파일 유형 파악의심스러운 바이너리의 파일 유형 구분. -> 운영 시스템과 아키텍처(32비트 또는 64비트 플랫폼) 식별에 도움. 윈도우 기반 악성코드 확장자 : 대부분 .exe / .dll / .sys 등으로 끝남.그러나 공격자가 파일 확장자를 수정할 수 있음. -> 파일 시그니처를 통해 파일 유형 구분 가능. 파일 시그니처(file signature) : 파일 헤더에 작성되는 바이트의 독특한 배열 순서.*윈도우 실행 파일 또는 PE 파일 : 파일의 첫 바이트에 MZ 또는 헥사 문자 4D 5A라는 파일 시그니처를 가짐.수작업 : 헥사 편집기(hex editor)로 파일을 열어 파일 시그니처를 찾..

보안/악성코드 2025.04.01

[논문]"머신러닝 기반 악성 URL 탐지 기법" 정리

전통적인 정보보호체계 : 시그니처 패턴 기반의 알려진 악성 URL 탐지-> 알려지지 않은 악성 URL 탐지 불가 악성 URL 데이터를 동적 학습해 효율적으로 악성 URL 탐지하는 기법 제안머신러닝 기반 특징 선택 알고리즘 사용 -> 악성코드 분류가중 유클리드 거리(Weighted Euclidean Distance, WED)를 활용 -> 사전처리 진행난독화 요소 제거 -> 정확도 개선악성코드 : 악의적인 목적을 위해 작성된 코드악성코드 은닉사이트 / 악성 URL(Uniform Resource Locator) : 악성코드를 사용자의 PC 감염시킬 수 있는 사이트-> 이러한 공격은 웹 사이트 방문, 이메일 확인 시에 발생. 악성코드 실행 후 공격. 악성코드 은닉 여부를 탐지하기 위한 정적 분석 기법에 관한 연..

보안/악성코드 2025.04.01

[Reverse Engineering]x86 Assembly 정리

이 글은 워게임(rev-basic-0)을 풀고 정리하면 추가로 공부하면 좋을 내용을 정리한 것이다.  어셈블리어 못 읽는게 이번 워게임 풀 때는 크게 문제가 되지 않았지만, 어느 정도 알아두는 편이 좋을 것 같았다. 그래서 드림핵의 리버싱 트랙의 Assembly Essential Part를 읽으며 공부했다. 아래 내용은 해당 부분의 요약본이다.x86 Assembly🤖 : Essential Part(1), Essential Part(2) 어셈블리 언어(Assembly Language) : 컴퓨터의 기계와 치환되는 언어. 어셈블리어의 종류도 다양하다.어셈블러(Assembler) : 일종의 통역사로, 개발자가 어셈블리어로 코드를 작성하면 기계어로 코드를 치환해준다.역어셈블러(Disassembler) : 기계..

[ESTsecurity]학술논문으로 위장하여 유포 중인 RokRAT 악성코드 주의!

국방 분야 학술논문으로 위장하여 RokRAT 악성코드를 유포하는 공격이 발견되었다. 해당 악성 파일은 LNK(바로가기) 파일로 내부에 파워쉘 코드가 포함되어 있다LNK 파일 실행 시, 파워쉘 명령어로 LNK 파일에 내장된 여러 파일이 추출/생성된다. 생성된 파일 목록파일명오프셋사이즈행위(LNK파일명).pdf0x000010E40x2A7965*디코이 파일toy01.dat0x002A8A490xD9190인코딩된 RokRAT 악성코드toy02.dat0x00381BD90x634toy01.dat 파일 실행toy03.bat0x0038220D0x14Ctoy02.dat 파일 실행 파일 생성이 끝나면 생성된 PDF 파일과 toy03.bat 파일 실행뒤 LNK 파일이 자가 삭제된다. PDF 파일 : 디코이 파일로 사용된 정상..

[reversing]Dreamhack_rev-basic-0

문제 설명이 문제는 사용자에게 문자열 입력을 받아 정해진 방법으로 입력값을 검증하여 correct 또는 wrong을 출력하는 프로그램이 주어집니다.해당 바이너리를 분석하여 correct를 출력하는 입력값을 찾으세요! 문제 파일을 받고, IDA에서 해당 파일을 열어서 정적 분석을 시도했다.어셈블리어를 잘 몰라서 f5를 눌러서 디컴파일된 코드를 바로 확인했다. main 함수인데, correct를 출력하는 입력값을 찾아야 하니까, if 조건문이 중요해 보였다. sub_140001000이 무슨 함수인지 잘 모르겠음. 이건 프로그램 실행하면 나오는 화면인데, "Input : "을 출력하고 입력을 받는 것 같다. 즉, sub_140001190이 printf고, sub_140011F0은 scanf 같다.v4가 입력받..

소학회/워게임 2025.03.31

[Reverse Engineering]Binary & Analysis 정리

Introduction: Reverse Engineering엔지니어링 : 완성품과 이를 구성하는 부품들의 기능과 설계를 고안하고, 제작하는 과정.리버스 엔지니어링(Reverse Engineering) : 엔지니어링의 역과정. 리버싱의 용도좋은 예 : 개발을 중단한 프로그램에 대한 패치가 필요할 때 / 각종 프로그램의 보안성 평가 / 악성코드를 분석할 때나쁜 예 : 상용 프로그램을 구매 없이 무료로 이용하기 위해 쓰는 키젠 프로그램 등의 불법 프로그램 제작할 때 / 게임핵을 만들 때리버싱 시 프로그램의 전체적인 작동 원리를 알아낼 수 있음. -> 지적 재산권 침해의 위험성.테스팅, 연구, 학습 등의 리버싱 : 저작권을 침해하지 않는 한, 제한적으로 허용. Background: Binary 프로그램을 연산 ..

[web]Dreamhack_simplesqli

문제 설명 로그인 서비스입니다.SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다.   *참고 사항 : 이번 문제는 Dreamhack 학습의 Web Hacking의 SQL Injection 파트를 읽으면서 풀었다.   사이트 접속해 보니까 사진과 같은 로그인하는 기능만 있었다. 코드 확인우선 database.db 파일로 데이터베이스를 관리하고 있는 것을 확인할 수 있다. 데이터 베이스의 구조 : 테이블 형식이고 아래와 같다.useriduserpasswordguestguestadmin랜덤 16바이트 문자열을 Hex 형태로 표현(32 바이트) GET : userid와 userpassword를 입력할 수 있는 페이지 제공.POST : 데이터베이스에 ..

소학회/워게임 2025.03.25

[1장]악성코드 분석 소개

이 글은 아래의 책을 읽고 공부 목적으로 작성됨.몬나파 K A, 「악성코드 분석 시작하기」 악성코드 : 악의정인 행위를 하는 코드로, 실행 파일/스크립트/코드 또는 다른 유형의 소프트웨어 형태가 될 수 있다. 악성코드가 수행하는 악성 행위 예시 :컴퓨터 연산 방해 / 개인, 비즈니스, 재무 데이터를 포함한 민감 정보 훔치기 / 표적 시스템에 무단으로 접근하기 / 표적을 감시하기 / 스팸 이메일을 보내기 / 분산 서비스 거부(DDoS, Distributed-Denial-of-Service) 공격에 참여하기 / 컴퓨터에 있는 파일을 잠금 후 대가 요구하기  악성코드의 분류1) 기능과 공격 벡터를 기준으로 분류한 악성코드 바이러스(Virus) 또는 웜(Worm) : 자가 복제하고 다른 컴퓨터로 확산하는 기능을..

보안/악성코드 2025.03.25