Red Team/레드팀 개념

정보보안 스터디 - 24주차 5일 - 타겟 정보 수집 방법

wonder12 2023. 3. 28. 09:31

 

tryhackme, hackthebox 등 CTF를 제대로 하기 시작했습니다.

 

 

☞ 레드팀 과정은

lockeeh martin kill 이나 MITRE 등의 kill chain을 따릅니다.

 

 

보통 initial access 부터 post-exploitation 이렇게 말하기도 하지만 자세하게 과정을 나눠 진행합니다.

Reconnaissance - 정찰, 정보수집
Weaponization - office 문서 파일리스 악성코드, 백도어 등 페이로드 준비
Delivery - Email, USB, web 등을 통해 이 페이로드를 타겟에 전달. 
Exploitation - 실행할 제로데이, 취약점 코드를 exploit
Installation - mimikatz, rubeus 등 멀웨어를 실행Command & Control - 리무트환경에서 C2C로 명령을 내립니다.Action on
 Objectives - 랜섬웨어, 데이터 유출 등 액션을 취합니다. 

 

 

 

 

침입방법도 추후에 정리할 예정입니다.

대표적으로는 physical intrusion으로 물리적으로 침투하는 방법도 구체적으로 배웁니다.

 

완전히 풀 정리하지는 않고 뜨문뜨문 개념을 정리하자면

 

☞ 정보 수집 단계에서

favicon의 정보를 이용하는 방법도 있습니다.

사용자가 지정하지 않으면 default값으로 해당 프레임워크의 favicon이 뜨는 경우가 있습니다.

 

그럴 경우 

 

 

curl [파비콘 경로주소] | md5sum

페이지뷰에서 파비콘의 .ico을 링크로 해서 해시값을 얻고

 

https://wiki.owasp.org/index.php/OWASP_favicon_database

에서 md5해시값을 찾아 프레임워크 버전까지 확인합니다. 프레임워크의 버전 및 취약점을 확인하여 공격을 하는 방법이 있습니다. 

 

sitemap.xml

검색엔진에 크롤링을 안되게 하는 robots.txt와 다르게 sitemap.xml은 크롤링이 원할하도록 매핑해주는 역할을 합니다.

따라서 웹브라우저에서는 보이지 않는 사이트를 더 많이 확인할 수 있고, 지금은 삭제한 옛날 페이지까지 확인 가능합니다.

 

 

어떤 언어로 쓰여진 사이트인지 확인하려면 HTTP헤더를 확인하는 방법이 좋습니다. 물론 막아놓을 수도 있겠지만

curl 10.10.84.188 -v

를해서 헤더까지 불러와 확인합니다.

 

 

웹페이지 아래에 보면 크레딧, 호스팅정보가 뜰 때도 정보를 확인할 수 있고

없다면 페이지뷰에서 주석을 확인해봅니다.

copyright notices or credits 프레임워크 버전 및 정보가 나와 있습니다.

자세하게 보자면 프레임워크를 알게된다면 > 버전의 취약점과 버그 어떤 부분이 패치됐는지 알아서 악용가능, 그리고 
기본 어드민 페이지, 기본 계정정보가 뭔지 알 수 있습니다.

 

 

OSINT를 빼놓을 수 없죠

구글 도킹도 많이 쓰지만 osint 툴을 많이 활용합니다.

예를 들어 Wappalyzer - 웹사이트 프레임워크 기술뭐썼는지, CMS content management system, 버전 등이 있습니다.

 

Wayback Machine 는 타임머신처럼

이 전에 스크랩된 거 보여주니까 예전 유효한 url이나 저장된 백업파일 등 다 볼 수 있습니다.

보고 싶은 게 있다면 미리 요청 해두어야하긴합니다.

 

 

github에서는

change log, 변경된 히스토리를 볼 수 있습니다.

team안에들어가있다면 다 볼 수 있어서 더 좋습니다.

타겟을 삼은 회사가 있다면 company names or website names를 검색해볼 수 있습니다.

소스코드, 패스워드, 콘텐츠 를 공개적으로 올려놓은 회사가 있으니 확인할 수 있겠죠.

 

원래 git 서비스라는 것은 변화준 파일을 commit하고(변화 기록), 이걸 중앙에 pull합니다. 쉽게말해 변화를 알 수 있는 repository입니다. github는 internet hosted version 입니다.

 

 

S3 buckets - storage service provided by amazon AWS

HTTP(S) 기반으로 콘텐츠, 파일 저장해두는데 여기서 access permission을 파일마다 부여할 수 있으며 잘못 설정되어있을 경우가 있습니다. 예를 들어 private > public된 파일 등
이러한 URL이 페이지 소스에 발견될수도 있고, github repo에서도 발견될 수 있습니다.
 {name}-assets, {name}-www, {name}-public, {name}-private, etc 등 으로 네임을 지을 수 있으니, 자동화도구로 브루트포싱하면 좋습니다.

http(s)://{tryhackme-assets}.s3.amazonaws.com

 

자동화 discovery 도구로는

fuff, dirb, dirbuster, gobuster, Feroxbuster

등이 사전 파일로 log정보나 숨겨진 php, 관리자페이지, 디렉토리, 확장자없는 설정파일 등을 확인할 수 있습니다.

기본 파일도 좋지만 https://github.com/danielmiessler/SecLists 의 common.txt 파일을 썼습니다.

 

 

gobuster보단 느리지만 나쁘지 않습니다.

 

dirb는 너무느려요.

 

 

차라리 dirbuster가 더 빠를 듯 합니다.