๋คํธ์ํฌ ๋ณด์ ์์ ์์ ์งํํ ๊ณผ์ ์ ๋๋ค.
ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ํ๋ ๊ธฐ์ ๋ฐ ๊ธฐ๊ด์์ IT ์ธํ๋ผ๋ฅผ ๊ตฌ์ถํ๊ณ ์ด์ํ๋ ์ฃผ์ ๋ฐฉ๋ฒ ์ค ํ๋๋ก AWS, NHN ํด๋ผ์ฐ๋ ๋ฑ ๋ง์ด ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ํ์ง๋ง ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ๊ตฌ์กฐ๊ฐ ๋ณต์กํ๋ฉฐ ์ํธํ๋์ง ์์ API ํค, ์๋ชป ๊ตฌ์ฑ๋ ๋คํธ์ํฌ ์ก์ธ์ค ๊ถํ ๋ฑ์ MITM ๊ณต๊ฒฉ์ ํต๋ก๊ฐ ๋ ์ ์์ต๋๋ค. ํด๋ผ์ฐ๋ ํ๊ฒฝ์์์ ๋คํธ์ํฌ ํต์ ์ ์ธํฐ๋ท์ ํตํด ์ด๋ฃจ์ด์ง๋ฉฐ, ์ด๋ก ์ธํด ์ค๊ฐ์ ๊ณต๊ฒฉ(MITM) ๊ณผ ๊ฐ์ ๊ณต๊ฒฉ์ด ๋ฐ์ํ์ฌ ๊ณต๊ฒฉ์๋ ์ค๊ฐ์ ์์นํ์ฌ ํต์ ์ ๊ฐ๋ก์ฑ๊ฑฐ๋ ์กฐ์ํ์ฌ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ํ์ทจํ๊ฑฐ๋ ๋ณ์กฐํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ํ์ฌ ์์ฉํ๋์ด์๋ ํด๋ผ์ฐ๋ ํ๊ฒฝ์์์ MITM ๊ณต๊ฒฉ ๊ณผ์ ์ ์ดํด๋ณด๊ณ , ์ฌ๋ฌ๊ฐ์ง ์ค์ ํ๊ฒฝ์ ์กฐ๊ฑด์ด ๊ณต๊ฒฉ์ ๋ฏธ์น๋ ์ํฅ์ ๋ถ์ํฉ๋๋ค.
์คํ AWS ํ๊ฒฝ ์ธํ
- ๊ณต๊ฒฉ์ PC: AWS ๋ด๋ถ์ Kali Linux EC2 ์ธ์คํด์ค
- ๊ณต๊ฒฉ ๋์ PC: AWS ๋ด๋ถ์ Ubuntu Linux EC2 ์ธ์คํด์ค
- ๊ฐ์ ํ๊ฒฝ: AWS EC2 VPC(Virtual Private Cloud) ๋ด๋ถ
1. AWS ๊ณ์ ์์ฑ ๋ฐ ์ฌ์ฉ์ ์์ฑํ์ฌ ์ ์ฑ (AdministratorAccess)์ ์ฐ๊ฒฐ ํด์ค๋๋ค.
2. VPC (network-security-vpc) ์์ฑ ํ์ VPC ์์ ํ ๊ฐ์ ํผ๋ธ๋ฆญ ์๋ธ๋ท (๊ฐ์ฉ์์ญ A)์ ์์ฑ ํด์ค๋๋ค.
3. ๋ผ์ฐํ ํ ์ด๋ธ์ 2๋ฒ์์ ์์ฑํ ์๋ธ๋ท์ ์ฐ๊ฒฐํด์ค๋๋ค.
4. ์ธํฐ๋ท ํต์ ์ ์ํด ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ฅผ ์์ฑํ์ฌ ๋ผ์ฐํ ํ ์ด๋ธ์ ์ฐ๊ฒฐํด์ค๋๋ค.
5. ๊ณต๊ฒฉ์์ ๊ณต๊ฒฉ ๋์์ EC2 ์ธ์คํด์ค๋ฅผ ์์ฑํด์ค๋๋ค.
- A. ๊ณต๊ฒฉ์ AMI ์ด๋ฏธ์ง๋ ์นผ๋ฆฌ, ๊ณต๊ฒฉ ๋์ AMI ์ด๋ฏธ์ง๋ ์ฐ๋ถํฌ๋ฅผ ์ ํํด์ ์์ฑํฉ๋๋ค.
- B. ์ธ์คํด์ค ์์ฑ ์์๋ ์์์ ์ค์ ํด์ค ์๋ธ๋ท1์ ๊ฐ๊ฐ ์ฐ๊ฒฐ์ ํด์ค๋๋ค.
- C. ์ธ์คํด์ค ์คํ์ ์ํ RSA ํค ํ์ด๋ฅผ ์์ฑํด์ค๋๋ค.
6. ๊ฐ๊ฐ ์ธ์คํด์ค์ SSH ์ ์์ ์ํด ํค ํ์ด๊ฐ ์๋ ๊ณณ์ผ๋ก ์ด๋ํ์ฌ
$ chmod 400 “network-security-key-pair.pem” ์ ์คํ ํ์ ssh ์ ์์ผ๋ก ์นผ๋ฆฌ EC2 ๋ด๋ถ์ ๋ค ์ด๊ฐ๋๋ค. (์ฐ๋ถํฌ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ์)
7. ์ค์ ํ VPC, ์๋ธ๋ท, ๋ผ์ฐํ ํ ์ด๋ธ ๊ตฌ์ฑ๋์ ๋๋ค.
๊ณต๊ฒฉ ๊ณผ์
๊ณต๊ฒฉ๋์ : ์ฐ๋ถํฌ EC2 ํ๊ฒฝ
1. ๊ณต๊ฒฉ ๋์์ธ ์ฐ๋ถํฌ EC2 ์ธ์คํด์ค ๋ด๋ถ๋ก ์ ๊ทผํ ํ์ ์ํ์น ์๋ฒ๋ฅผ ์ค์นํฉ๋๋ค.
2. Openssl์ ํตํด ssl์ธ์ฆ์๋ฅผ ๋ฐ๊ธ๋ฐ์ต๋๋ค.
- A. $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
3. /etc/apache2/sites-avilable.dafult-ssl.conf ์ ๋ค์ ๋ช ๋ น์ด ์ธ ์ค์ ์ถ๊ฐํด์ฃผ๊ณ SSL ๋ชจ๋ ํ์ฑํ ๋ฐ apache๋ฅผ ์ฌ์คํํด์ค๋๋ค.
- A. SSLEngine on
SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key - B. $ sudo a2enmod ssl
$ sudo a2ensite default-ssl
$ sudo systemctl restart apache2
4. ๋ณด์๊ทธ๋ฃน ์ค์
- A. ๊ณต๊ฒฉ๋์ ์๋ฒ๊ฐ ์ธ๋ถ ์ธํฐ๋ท์ ์ ๊ทผํ๊ธฐ ์ํด์๋ AWS ์ธ์คํด์ค ๋ด์ ๋ณด์๊ทธ๋ฃน์ ์ง์ ํด์ค์ผํฉ๋๋ค.
- B. ์ธ๋ฐ์ด๋ ๊ท์น์์ 80๋ฒ HTTP ํฌํธ์ 443๋ฒ HTTPS ํฌํธ๋ฅผ ์ด์ด์ฃผ๋ฉด
ํผ๋ธ๋ฆญ IP๋ก ์ธ๋ถ์์ ์ ๊ทผ์ด ๊ฐ๋ฅํ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
๊ณต๊ฒฉ์ : ์นผ๋ฆฌ EC2 ํ๊ฒฝ
1. ์นผ๋ฆฌ ๋ฆฌ๋
์ค์ Bettercap์ ์ค์นํด์ค๋๋ค. $ sudo apt install bettercap
2. Bettercap์ ์คํํด์ค๋๋ค.
- A. $ sudo bettercap -iface eth0
- B. >> net.probe on: ๋คํธ์ํฌ ์ค์บ๋์ ํ์ฑํํฉ๋๋ค. ์ด๋ Bettercap์ด ๋คํธ์ํฌ ๋ด์์ ์ฌ์ฉ ๊ฐ๋ฅํ ํธ์คํธ๋ฅผ ํ์งํ๋๋ก ํฉ๋๋ค.
- C. >> set arp.spoof.targets 10.0.1.31: ARP ์คํธํ ๋์์ ์ค์ ํฉ๋๋ค. ์ฌ๊ธฐ์๋ 10.0.1. 31 IP ์ฃผ์๋ฅผ ๊ฐ์ง ์ฐ๋ถํฌ ํธ์คํธ๋ฅผ ๊ณต๊ฒฉ ๋์์ผ๋ก ํฉ๋๋ค. ARP ์คํธํ์ผ๋ก ๊ณต๊ฒฉ์๊ฐ ํผํด์์ IP ์ฃผ์๋ก์ ํธ๋ํฝ์ ์์ ์ MAC ์ฃผ์๋ก ๋ผ์ฐํ ํ ์ ์๋๋ก ํฉ๋๋ค.
- D. >> arp.spoof on: ARP ์คํธํ์ ํ์ฑํํ๊ณ Bettercap์ ์ฌ์ฉํ์ฌ ARP ์คํธํ์ ์ค์ ๋ก ์คํํ๋๋ก ํด์ค๋๋ค. ์ด์ ๊ณต๊ฒฉ์๋ ํผํด์๋ก๋ถํฐ์ ํธ๋ํฝ์ ์ค๊ฐ์์ ๊ฐ๋ก์ฑ ์ ์๋ ์ํฉ์ด ๋์์ต๋๋ค.
- E. >> set https.proxy.sslstrip true: HTTPS ํธ๋ํฝ์์ SSL ์คํธ๋ฆฝ์ ์ฌ์ฉํ์ฌ SSL ์ฐ๊ฒฐ์ ํด์ ํ๋๋ก ์ค์ ํฉ๋๋ค. SSL ์คํธ๋ฆฝ์ผ๋ก HTTPS ํธ๋ํฝ์์ SSL์ ์ ๊ฑฐํ์ฌ ํผํด์๊ฐ ๋ณด์๋ ์ฐ๊ฒฐ๋ก ์ธ์ํ๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.
- F. >> https.proxy on: HTTPS ํ๋ก์๋ฅผ ํ์ฑํํฉ๋๋ค. ์ด ๋ช ๋ น์ผ๋ก Bettercap์ ์ฌ์ฉํ์ฌ HTTPS ํ๋ก์๋ฅผ ์คํํ๋๋ก ํฉ๋๋ค. ์ด์ ๊ณต๊ฒฉ์๋ ํผํด์์ ์๋ฒ ๊ฐ์ HTTPS ํต์ ์ ๊ฐ๋ก์ฑ ์ ์๋ ์ํฉ์ด ๋์์ต๋๋ค.
3. ๊ณต๊ฒฉ ๋์์ธ ์ฐ๋ถํฌ์ HTTPS ๊ฐ ์ ์ฉ๋ ํผ๋ธ๋ฆญ IP๋ก ์ ๊ทผํด๋ณด๋ฉด, ๋ณด์ ์ฐ๊ฒฐ์ด ๋์ง ์์์ ํ์ธํ ์ ์๊ณ , ์ฐ๋ถํฌ IP์์ ์์
์ ์ํํ๋ฉด, ์นผ๋ฆฌ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฟ ๋ณผ ์ ์์ต๋๋ค.
๊ฒฐ๊ณผ ๋ถ์
์์ ๊ณผ์ ์ ํตํด ํด๋ผ์ฐ๋ ํ๊ฒฝ์์ SSL MITM ๊ณต๊ฒฉ์ ์ํํ์ต๋๋ค. ๊ณต๊ฒฉ์๋ Bettercap์ ์ฌ์ฉํ์ฌ ํผํด์์ HTTPS ํธ๋ํฝ์ ๊ฐ๋ก์ฑ๊ณ , SSL ์คํธ๋ฆฝ์ ํตํด ์ํธํ๋ฅผ ํด์ ํ์ฌ ํผํด์๊ฐ ์น ์๋ฒ์ ํต์ ํ๋ ๋ด์ฉ์ ํ์ธํ ์ ์์์ต๋๋ค.
์คํ ๊ณผ์ ์์ AWS ๊ตฌ์ฑ์ ๋ฐ๋ผ ARP ์คํธํ ๋ฌธ์ , ์ธ๋ถ ์๋ฒ์ ์ ๊ทผํ์ง ๋ชปํ๋ ๋ฌธ์ ๊ฐ ์์์ต๋๋ค.
1๋ฒ AWS ๊ตฌ์ฑ ๋ฐฉ์
์ด๊ธฐ AWS ๊ตฌ์ฑ์ ๋ค์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ํ ๊ฐ์ VPC์์ ๋ ๊ฐ์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ๋๊ณ ๊ฐ๊ฐ ์นผ๋ฆฌ ๋ฆฌ๋
์ค์ ์ฐ๋ถํฌ ๋ฆฌ๋
์ค๋ฅผ ๋ฐฐ์นํ ํ์ MITM ๊ณต๊ฒฉ์ ์ํํ์ต๋๋ค.
ํ์ง๋ง ์ด ๊ตฌ์ฑ์ผ๋ก ์ค์ ํ ๊ณต๊ฒฉ์์ธ ์นผ๋ฆฌ ๋ฆฌ๋ ์ค์์ ARP ์คํธํ ๊ณผ์ ์์ ๊ณต๊ฒฉ ๋์์ ์ฐพ์ง ๋ชปํ๋ค๋ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๊ณ , ๋์ผํ vpc์ ์๋ธ๋ท์ ๋ฐฐ์นํ์ฌ ๊ณต๊ฒฉ์ ์ ๋๋ก ์ํํ ์ ์๊ฒ ๋์์ต๋๋ค.
๋ํ ๋ ์ธ์คํด์ค ๊ฐ์ ํธ๋ํฝ์ ํ์ฉํด์ผ ํ๋ฏ๋ก ๋ณด์๊ทธ๋ฃน์ ์ธ๋ฐ์ด๋ ๊ท์น์ผ๋ก 22ํฌํธ, 80ํฌํธ, 443 ํฌํธ๋ฅผ ํ์ฉํด์ค์ผ๋ก ๊ณต๊ฒฉ์ ์ฑ๊ณต์ ์ผ๋ก ์ํํ ์ ์์์ต๋๋ค.
2๋ฒ AWS ๊ตฌ์ฑ ๋ฐฉ์
๋ฐ๋ผ์ ์ต์ข ์ ์ผ๋ก ๊ฐ์ VCP์์ ํ ๊ฐ์ ํผ๋ธ๋ฆญ ์๋ธ๋ท์ ๊ณต๊ฒฉ์์ธ ์นผ๋ฆฌ ์ธ์คํด์ค์ ๊ณต๊ฒฉ ๋์์ธ ์ฐ๋ถํฌ ์ธ์คํด์ค๋ฅผ ๋ฐฐ์นํ๊ณ , ์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ฅผ ๋ผ์ฐํ ํ ์ด๋ธ๋ก ์ค์ ํด์ฃผ์ด์ ์ธ๋ถ ์ธํฐ๋ท ์ ๊ทผ๋ ํ์ฉํด์ค์ผ๋ก์จ MITM ๊ณต๊ฒฉ์ AWSํ๊ฒฝ์์ ์ํํ ์ ์์์ต๋๋ค.
์ฐธ๊ณ ๋ฌธํ
- AWS ๊ณต์ ๋ฌธ์ : https://docs.aws.amazon.com/ko_kr/vpc/latest/userguide/what-is-amazon-vpc.html
- AWS ๊ตฌ์ถ ๋ฐฉ๋ฒ ๋ฐ ์นผ๋ฆฌ ๋ฆฌ๋ ์ค ์ค์ :
n https://velog.io/@osmdark/1.AWS%EC%84%9C%EB%B2%84-%EA%B5%AC%EC%B6%95%ED%95%98%EA%B8%B0
n https://aws.amazon.com/marketplace/pp/prodview-fznsw3f7mq7to
- MITM ์ฐธ๊ณ ๋ธ๋ก๊ทธ :
n https://jennana.tistory.com/472
n https://hsm-racoon.tistory.com/62