Skip to content
This repository was archived by the owner on Sep 11, 2025. It is now read-only.
/ Anti-Signature Public archive

Anti-Signature는 파일의 무결성을 검사하고, 랜섬웨어 감염을 탐지하며, 실행 파일에 대한 기본적인 안티-디버깅 기술을 적용하는 등 다양한 보안 기능을 제공하는 파이썬 기반의 커맨드 라인 도구입니다. 또한, 네트워크 트래픽을 모니터링하여 악성 패킷을 탐지하고 모든 활동을 데이터베이스에 기록하여 보고서를 생성할 수 있습니다.

Notifications You must be signed in to change notification settings

KaztoRay/Anti-Signature

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anti-Signature

  • 파일 시그니처와 안티디버깅 방식을 사용한 랜섬웨어 및 어뷰징 방지 프로젝트.

Anti-Signature는 파일의 무결성을 검사하고, 랜섬웨어 감염을 탐지하며, 실행 파일에 대한 기본적인 안티-디버깅 기술을 적용하는 등 다양한 보안 기능을 제공하는 파이썬 기반의 커맨드 라인 도구입니다. 또한, 네트워크 트래픽을 모니터링하여 악성 패킷을 탐지하고 모든 활동을 데이터베이스에 기록하여 보고서를 생성할 수 있습니다.


📜 목차


✨ 주요 기능

  • 파일 시그니처 검사: 파일의 실제 시그니처(매직 넘버)를 분석하여 확장자와 일치하는지 확인합니다.
  • 파일 해시 무결성 검증: SHA-256 해시 값을 비교하여 파일이 변경되었는지 확인합니다.
  • 랜섬웨어 탐지: 파일 이름과 확장자를 기반으로 알려진 랜섬웨어 패턴을 탐지합니다.
  • 안티-디버깅: 실행 파일(PE, ELF)에 간단한 안티-디버깅 및 난독화 코드를 추가하거나 제거, 탐지할 수 있습니다.
  • 카나리(Canary) 값 삽입: 파일 끝에 특정 값(카나리)을 삽입하여 파일 변조 여부를 손쉽게 확인할 수 있습니다.
  • 네트워크 모니터링: 실시간으로 네트워크 패킷을 캡처하고, 사전에 정의된 악성 패턴과 비교하여 의심스러운 활동을 탐지합니다.
  • 데이터베이스 로깅: 모든 검사 및 탐지 활동을 MySQL 또는 Oracle 데이터베이스에 기록합니다.
  • 보고서 생성: 데이터베이스에 기록된 로그를 바탕으로 DOCX 또는 HTML 형식의 분석 보고서를 생성합니다.
  • 파일 위장 및 복원: 파일 확장자를 .dll로 변경하여 실행을 방지하고, 필요시 원본 확장자로 복원합니다.

⚙️ 시스템 요구사항

  • Python 3.x
  • pip (Python 패키지 설치 관리자)

📦 설치 방법

  1. 프로젝트 클론 또는 다운로드
    git clone [https://github.com/your-username/anti-signature.git](https://github.com/your-username/anti-signature.git)
    cd anti-signature
  2. 필요한 Python 라이브러리 설치
    pip install mysql-connector-python cx_Oracle scapy python-docx

🗄️ 데이터베이스 설정

이 프로젝트는 활동 로그를 저장하기 위해 MySQL 또는 Oracle 데이터베이스를 사용합니다.

MySQL 설정 예시

  1. signature 데이터베이스를 생성합니다.
  2. 아래 SQL 쿼리를 실행하여 필요한 테이블들을 생성합니다.
CREATE DATABASE signature;
USE signature;

CREATE TABLE operation_logs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    operation VARCHAR(255) NOT NULL,
    details TEXT,
    status VARCHAR(50) NOT NULL,
    timestamp DATETIME NOT NULL
);

CREATE TABLE file_integrity_logs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    file_name VARCHAR(255) NOT NULL,
    action VARCHAR(100) NOT NULL,
    status VARCHAR(50) NOT NULL,
    timestamp DATETIME NOT NULL
);

CREATE TABLE file_signature_logs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    file_name VARCHAR(255) NOT NULL,
    signature_before VARCHAR(255),
    signature_after VARCHAR(255),
    timestamp DATETIME NOT NULL
);

🚀 사용법

Anti-Signature는 터미널에서 커맨드 라인 인자(argument)를 통해 실행됩니다.

python main.py [OPTIONS]

주요 옵션


옵션 설명
-f, --file 검사할 파일 경로 지정. (예: -f file.pdf) 해시 값과 함께 지정 가능. (예: -f file.pdf:hash_value)
-R, --ransomware 지정된 파일의 랜섬웨어 감염 여부 확인.
-replace 파일 시그니처를 분석하여 올바른 확장자로 변경.
-D, --apply-debug 파일에 안티-디버깅 기법 적용.
-dd, --detect-debug 파일에 적용된 안티-디버깅 기법 탐지.
-dx, --remove-debug 파일에서 안티-디버깅 기법 제거.
-net 네트워크 모니터링 시작. (종료: Ctrl+C)
-c, --canary 파일에 카나리 값을 삽입하여 변조 탐지 준비.
-ccheck 파일의 카나리 값 무결성 검사.
-cd 파일에서 카나리 값 제거.
-cp 파일을 temp 폴더에 백업하고 확장자를 .dll로 변경하여 위장.
-db 사용할 데이터베이스 선택. (mysql 또는 oracle)
-dbi 파일 관련 작업 결과를 DB에 로그로 저장.
-report DB 로그를 바탕으로 보고서 생성. (docx 또는 html)

사용 예시

  1. 파일 무결성 및 랜섬웨어 감염 여부 동시 확인 python anti_signature.py -f "C:\Users\test\Desktop\document.docx" -R

  2. 파일 시그니처를 기반으로 확장자 자동 변경 python anti_signature.py -f "unknown_file" -replace

  3. 실행 파일에 안티-디버깅 적용 및 DB에 로그 기록 python anti_signature.py -f "program.exe" -D -db mysql -dbi

  4. 네트워크 트래픽 실시간 모니터링 python anti_signature.py -net

  5. 파일에 카나리 삽입 후, 무결성 검증

    • 카나리 삽입 python anti_signature.py -f "important.dat" -c

    • 이후 무결성 검사 python anti_signature.py -f "important.dat" -ccheck

  6. DB 로그를 바탕으로 HTML 보고서 생성 python anti_signature.py -db mysql -report html

About

Anti-Signature는 파일의 무결성을 검사하고, 랜섬웨어 감염을 탐지하며, 실행 파일에 대한 기본적인 안티-디버깅 기술을 적용하는 등 다양한 보안 기능을 제공하는 파이썬 기반의 커맨드 라인 도구입니다. 또한, 네트워크 트래픽을 모니터링하여 악성 패킷을 탐지하고 모든 활동을 데이터베이스에 기록하여 보고서를 생성할 수 있습니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published