본문 바로가기

Security

(80)
HTML 파일 포맷 검출 로직 HTML HTML 파일은 악성코드 URL 등이 삽입되어서 호출 될 때 취약점 발생가능 공백 하나라도 바뀔 시, 다른 악성코드 URL로 수정될 시 MD5가 계속 바뀌므로 패턴 DB 수정이 계속 일어남 따라서 MD5 해시 값으로 악성코드 검사 불가능 정규 표현식 사용 r'\w+@\w.\w+' r은 파이썬에서 문자열을 임의로 해석하지 말라는 의미 없으면 \n을 엔터키로 해석 w는 영문자(소문자/대문자), 숫자, _(언더바) 표현 +는 1번 이상 등장 python에서 re 모듈로 정규식 적용 간편 re.findall(정규식, 문자열) 문자열에서 정규식 적용된 부분만 찾아서 반환 텍스트 파일인지 확인 파일은 텍스트 파일 or 바이너리 파일 p_text = re.compile(r'[\w\s!"#$%^\'()*+,\..
압축 파일과 임베딩 파일 압축 프로그램은 여러 개의 파일을 비손실 압축을 통해 하나의 파일로 만든다. 어떤 파일 내부에 또 다른 파일이 존재할 경우 임베딩 파일이라는 표현을 사용하기도 한다. 임베딩 파일을 압축 파일의 상위 개념으로 생각해도 좋음. hello 라는 문자열을 압축하면 문자열 길이가 5에서 13으로 증가하는 현상 발생. 이미 충분히 짧은 문자열은 압축을 하지 않고 압축 파일의 헤더만을 추가함. : 솔리드 압축 OpenAV 문서에서 압축 파일을 처리하는 방식 압축 파일들을 Virtual File System으로 취급 Virtual File System은 디렉토리, 파일의 개념이 존재함 Virtual File System Interface를 통해 폴더 내부로 이동하여 파일 I/O 처리 키콤 백신에서는 압축 파일을 임베딩..
보안 탐지 알고리즘 보호되어 있는 글입니다.
Machine Learning & Security 효과적 예시 rule 기반 경험적 솔루션 적용 대상 침입 탐지 악성코드 분류 네트워크 분석 머신러닝을 도입하게 된 큰 원인 : 스팸 메일 이메일 필터 이메일의 메타데이터와 평판을 이용하여 내용 보기 전 스팸 여부 예측 가능 보안 분야에서 사용하는 머신 러닝의 기술 패턴 인식 데이터의 하위 집합 패턴을 학습. 스팸 메일 스팸은 예측 가능한 속성 집합을 가지며 알고리즘은 속성을 통해 이메일을 분류하는 패턴으로 구성되어 학습됨. 퍼징 캠페인 취약점을 유발하는 코드 패턴을 추출. 비정상 탐지 데이터 하위 집합 패턴을 학습하지 않고 데이터의 대부분을(95퍼 이상) 해석하는 정규성을 찾아냄.
Python plugin engine architecture (키콤) 목적 1. 동적 모듈 로딩 사용 빌드 후 실행 파일로 존재하는 프로그램의 경우, 내부에서 참조하는 모듈이 수정되면 메인 소스도 다시 컴파일 해서 반영해야 함 파일이 큰 경우 재빌드 시간 오래 걸림 동적 로딩으로 구현 시 외부 파일 수정하면 런타임에 가져오므로 재빌드 필요 없음.' imp 라이브러리 활용 2. 플러그인 구조 필요 만약 특정 모듈을 동적으로 로딩해서 사용하는 경우 특정 모듈에게 TC가 존재한다면, 모듈 기능이 수정된 후 새로 추가된 TC 뿐만 아니라 기존 TC에 대해서도 전부 테스트 진행 필수 일부 기능이 수정되어도 전체 소스에 영향을 미칠 수 있기 때문. 예를 들어 악성코드 검색하는 모듈이 검색하는 윈도우 파일 대상 검색 알고리즘을 하나 더 추가한다면 윈도우 파일 뿐만아니라 리눅스, 맥 등..
백신 배포본 만들기 (pyinstaller) pip install pyinstaller 배포 파일이 있는 곳에서 pyinstaller [파일명].py 실행 완료 후 dist 폴더에 존재. build 배치 파일 생성 build.bat pyinstaller [파일명].py 위 명령어를 저장 anti_virus.exe 실행 시 exit 관련 오류 발생한다면 sys.exit(0)으로 모듈 참조를 정확히 쓰면 됨. 모듈을 분리해서 import를 한 경우, exe 파일을 만들면서 모두 불러와서 한 파일에 내장함으로 같은 위치에 없어도 정상 동작함. exe 에 내장된 모듈 외에 외부 모듈을 사용하는 방법 import imp 필요 try: m = 'scan_mod' # 로딩할 모듈 명 f, filename, desc = imp.find_module(m, ['']..
kali linux tools whois ip로 dns 명 추출 dig dns명으로 ip 추출 dnsmap dns명으로 ip 관련 상세 내용 추출 smtp-user-enum 공격 대상의 사용자 계정에 관한 정보 (존재 유무 등) ettercap 두 호스트 사이에서 중간자 공격 수행 arpspoof (dsniff 설치하면 깔림) arp 테이블 위조하여 spoofing nmap port 스캐닝 objdump 정적 파일 디버깅 gdb 프로세스 디버깅 가능 snmpwalk 게이트웨이 내부 네트워크에서 다른 호스트의 민감정보 확인가능 medusa 인증 크랙 도구 (브루트포스 기반 대입 인증 시도) tcpdump 네트워크 트래픽 정보 수집 (와이어샤크 같이 필터링 가능) arachni 웹 취약점 스캐너 snmp (simple network ma..
kali msfvenom 보호되어 있는 글입니다.