1. 프록시(Proxy)란?
- 프록시는 '대리', '대신' 을 의미함
- 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해 주는 컴퓨터 시스템이나 응용 프로그램
- 서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 가리켜 ‘프록시’, 그 중계 기능을 하는 것을 '프록시 서버'
- 장점으로 전송시간 절약, 네트워크 병목 현상 방지, 보안 안정성 향상
1-1. 포워드 프록시 서버(Forward Proxy Server)
- 흔히 말하는 ‘프록시 서버’란 포워드 포록시 서버를 의미함
- 프록시 서버가 클라이언트 앞에 위치함
- 클라이언트의 요청이 웹 서버가 아닌 Proxy server로 전달되어, Proxy server가 응답을 받아 전달하는 방식
1-2. 포워드 프록시 서버(Forward Proxy Server)의 용도
- 캐싱 : 자주 사용되는 HTML, JS, CSS, 이미지와 같은 정적 파일들을 원 서버로부터 캐싱하고, 클라이언트가 요청할 때 원 서버로 요청하는 대신 가지고 있는 캐시로 응답
- 특정 컨텐츠 액세스 제한 : 학교 혹은 사내의 내부망에 프록시 서버를 두어 특정 컨텐츠에 대한 액세스를 제한
클라이언트의 모든 요청은 프록시를 거쳐 인터넷으로 연결되기 때문에 학교에서는 학생들에게 유해한 웹사이트를 차단할 수 있고, 사내망에서도 보안을 위해서 특정 웹사이트에 대한 접속을 차단 - 익명성 확보 : 모든 요청이 프록시 서버를 통해 발생하므로 클라이언트는 인터넷에서 자신의 IP 주소가 노출되지 않음
1-3. 리버스 프록시 서버(Reverse Proxy Server)
- 리버스 프록시 서버는 웹서버 앞에 위치함
- 클라이언트가 웹 서버가 아닌 Reverse Proxy로 설정된 주소로 요청하고, Proxy server가 요청을 받아 웹 서버에 전달하는 방식
1-4. 리버스 프록시 서버(Reverse Proxy Server)의 용도
- 로드밸런싱 : 대량의 트래픽을 하나의 싱글 서버로 감당해 내기란 어렵기 때문에, 리버스 프록시 서버를 여러개의 서버 앞에 두면 특정 서버가 과부화 되지 않게 로드밸런싱이 가능
- DDoS 등의 공격으로부터 보호 : 본래 서버의 IP 주소를 노출시킬 필요가 없기 때문에 해커들의 서버를 향한 DDoS 공격 같은 시도를 방지하는데에 유용
- SSL 비용 절감 : 리버스 프록시에만 SSL을 적용하면, 실제 서버는 SSL 통신에서 오는 추가적인 계산 비용 절감
- 캐싱 : 포워드 프록시와 동일하게 리버스 프록시도 캐싱 기능을 수행
2. 프록시 툴
- 프록시의 기능이 활용된 도구
- 중간에 Request 값들을 가로채고 변조해서 변조된 값으로 입력이 되도록 하여 모의해킹, 취약점 진단 시 사용
2-1. Paros
- JAVA 기반으로 작동하는 웹 프록시 프로그램
- 웹 사이트에 대한 취약성을 분석할 수 있을 뿐만 아니라 웹 해킹도구로도 사용
- Tree 형태로 사이트 구조를 제공하여 홈페이지의 구조를 쉽게 분석가능
- 서버에 해킹 접근 시 사용자 정보가 남음
- 업데이트가 되지 않아 안전하지 않기 때문에 회사에서 사용하기 어려움
2-2. Burpsuite (실무에서 제일 많이 사용)
- Proxy 서버를 만들어 패킷 분석 및 조작을 도와주는 프로그램
- 모의해킹 시 매우 많이 사용하는 툴 중 하나
- 사용자와 관련된 정보를 남기지 않으며 사용하기 좋은 여러 기능들(Intruder,Repeater,Sequencer,Decoder 등)이 있어서 유용
- 소프트웨어의 그래픽 사용자 인터페이스는 그다지 사용자에게 친화적이지 못하는 부분을 보임
2-3. Fiddler
- 컴퓨터와 웹 서버 또는 서버 사이의 HTTP 트래픽을 기록, 검사 및 변경하는데 사용되는 디버깅 프록시 툴
- 인터넷과 테스트 컴퓨터 간의 네트워크 트래픽을 캡처하여 웹 응용 프로그램을 디버그하는 데 유용
수신 및 발신 데이터를 검사하여 브라우저가 요청 및 응답을 수신하기 전에 모니터링하고 수정 가능
'침해대응' 카테고리의 다른 글
[웹 모의해킹] Command Injection 공격 (0) | 2024.11.16 |
---|---|
DVWA 환경 구축 (칼리 리눅스 설치) (0) | 2024.03.18 |
Web Shell (0) | 2023.11.25 |
웹 취약점 4 (0) | 2023.11.25 |
웹 취약점 3 (2) | 2023.11.25 |