보안

손으로 배우는 해킹(Nomartic Youtube)

oose 2025. 3. 11. 19:56

 

1. 정보 수집

nmap을 이용해서 열려있는 포트 확인. 여기에 스크립트를 이용하면 더 많은 정보를 알 수 있음(취약점, 웹사이트 제목, 웹 서버 종류, ssh 호스트 키, SSL/TLS 암호화 강도 등) 

nmap -sV -sC (ip주소) > scan_res

꿀팁 : 결과를 파일에 저장해두기. 나중에 여러 번 볼 일이 많음.

 

2. 서칭

정보 수집을 통해 찾아낸 서버 프로그램이 있다면 해당 프로그램의 cve가 존재하는지 검색. 공개된 취약점을 찾는 세가지 방법

1) 구글링, chat GPT

-> (프로그램 이름/버전) vulnerability

-> (프로그램 이름/버전) exploit

2) exploit db 사이트

3) searchsploit 명령어

searchsploit (프로그램 이름 및 버전)

-> 2)에서 exploit db와 연동되어 있음. 따라서 두 방법은 같은 결과가 나옴.

 

@실습-(1) apache httpd 2.4.18, (2) fuel CMS ver1.4의 취약점 찾아보기

(1) apache httpd 2.4.18

- ap_strcmp_match() 버퍼 오버플로우

- r:wsread() 호출할 때 버퍼 오버플로우

- connection 헤어 홉-바이-홉 메커니즘을 기반으로 원본 서버에 X-Forwarded-*헤더를 보내지 않을 수 있는 취약점

- mod_proxy_ajp, mod_proxy 모듈에서 HTTP 요청 스머글링 취약점

- mod_macro 오버플로우

- mod_rewrite 모듈에서 치환 인코딩 문제 + SSRF 취약점

 

(2) fuel CMS ver1.4

- 원격 코드 실행(문자열 필터링x) 취약점

- sql 인젝션 취약점('col' 파라미터, 'fuel_replace_id')