네트워크 구성
Window_A(Attacker): 192.168.1.1/24
Kail_Linux(Victim): 192.168.1.10/24
WinSVR_B(Web_Server): 192.168.2.2/24
목표
- Attacker가 Victim의 http 패킷을 스니핑 한 후 Attacker PC에서 Victim의 Session Token(Cookie) 값을 이용하여 Victim 권한을 탈취하려고 한다.
공격 전 웹 사이트 Cookie 취약점 확인
1) 웹 사이트 Cookie값 확인
- javascript:document.cookie를 입력하여 해당 페이지의 Cookie값을 확인한다.
- 로그인 전 쿠키값과 로그인 후 쿠키값이 다른 것을 확인할 수 있다.
1. 로그인 이전
2. 로그인 이후
2) 회원정보 수정 페이지 확인
- 2개의 Internet Explorer를 연 후 Win_SVR_C(Web 서버)에서 운영 중인 www.test.com에 접속하였다.
- 이중 왼쪽 화면만 로그인 버튼을 클릭한다.
- 왼쪽 브라우저에서 사용자 로그인을 완료한 이후에 각각 회원정보 수정 페이지를 이동한다.
- 왼쪽은 로그인을 했기 때문에 회원정보 수정 페이지가 나오고 오른쪽은 로그인을 하지 않았기 때문에 로그인 페이지가 등장하게 된다.
Kali Linux에서 Cookie 값 변조
ARP Sniffing 수행
- 우선 Target을 찾기 위해서 192.168.1.1에서 요청하는 패킷을 Wireshark로 스니핑을 수행한다.
- 또 다른 터미널을 연 후 응답 패킷을 받기 위해서 중계 처리를 수행한다.
ARP Spoofing 적용 확인
- Window_A에서 www.test.com에 접속한다.
- Kali Linux에서 정상적으로 Window_A에서 보낸 패킷을 스니핑 한 것을 확인할 수 있다.
Kail Linux에서 Paros를 통한 Cookie값 변조
- Kali Linux에서 paros를 실행시킨다.
- Cookie값을 변조시키기 위해서 Tools → Filter에 들어간다.
- Filter 항목에서 Replace HTTP request header... 를 Enable에 체크한 후 옆에있는 ...아이콘을 누른다.
- Pattern: 에 모든 Cookie값을 지정하기 위해서 Cookie:* 로 지정한다.
- Replace with: 는 이전 Window_A에서 메모장에 저장해 두었던 쿠키값을 Cookie: [Window_A 쿠키 값]으로 붙여 넣는다.
- 만약 Window_A의 Cookie값을 알지 못한다면 Window_A의 웹브라우저에서 javascript:documet.cookie를 통해 Cookie값을 확인하면 된다.
- Kali Linux에서 Firefox 웹브라우저에 접속한 후 Proxy 기능을 활성화시킨다.
- Kali Linux에서 www.test.com에 접속하면 로그인을 하지 않아도 Window_A 사용자로 로그인이 가능하고 회원정보 수정도 가능하다.
대응법
- Sniffing을 할 수 없도록 설정한다. (네트워크 보안 설정)
- HTTPS, SSL을 이용한 암호화 통신 구현한다.
'Hacking & Security > Kali Linux' 카테고리의 다른 글
[Kali Linux] Brute Force Attack (Johnny, John the Ripper) (0) | 2020.01.22 |
---|---|
[Kali Linux] SQLmap을 통한 Database Schema 파악 (0) | 2020.01.07 |
[Kali Linux] Route Injection 공격 (OSPF) (0) | 2019.11.13 |
[Kali Linux] Route Injection 공격 (EIGRP) (0) | 2019.11.13 |
[Kali Linux] Route Injection 공격 (RIP) (0) | 2019.11.12 |
공부&일상 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요! 질문은 언제나 환영입니다😊