๋ฐ์ด๋ฌ์ค ๋ถ์๊ฐ์ ์ปดํจํฐ ๋ณด์ ์ฐ๊ตฌ์๋ค์ ๊ฐ๋ฅํ ํ ๋ง์ ์๋ก์ด ๋ด๋ท ์ํ์ ์์งํ๊ธฐ ์ํด ๊ฒฝ์ํ๊ณ ์์ต๋๋ค. ์์ ๋ค๋ง์ ๋ชฉ์ ์ผ๋ก ํ๋ํ์ ์ฌ์ฉํ๋๋ฐ... ๊ทธ๋ฐ๋ฐ ์ค์ ์ํฉ์์ ์ ์ฑ์ฝ๋๋ฅผ ๊ด์ฐฐํ๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น์? ์๋ฒ๋ ๋ผ์ฐํฐ๋ฅผ ์ํ์ ๋น ๋จ๋ฆฌ์ จ๋์? ์ ํฉํ ์ฅ์น๊ฐ ์์ผ๋ฉด ์ด๋ป๊ฒ ๋๋์? ๋ด๋ท ๋ ธ๋์ ์ก์ธ์คํ๊ธฐ ์ํ ๋๊ตฌ์ธ bhunter๋ฅผ ๋ง๋ค๊ฒ ๋ ๊ฒ์ ์ด๋ฌํ ์ง๋ฌธ๋ค ๋๋ฌธ์ด์์ต๋๋ค.
์ค์ฌ ์ฌ์
๋ด๋ท์ ํ์ฅํ๊ธฐ ์ํด ์ ์ฑ์ฝ๋๋ฅผ ํ์ฐ์ํค๋ ๋ฐฉ๋ฒ์๋ ํผ์ฑ๋ถํฐ ์ ๋ก๋ฐ์ด ์ทจ์ฝ์ ์ ์ฉ๊น์ง ๋ค์ํ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ ์ฌ์ ํ โโSSH ๋น๋ฐ๋ฒํธ๋ฅผ ๋ฌด์ฐจ๋ณ ๋์ ํ๋ ๊ฒ์ ๋๋ค.
์์ด๋์ด๋ ๋งค์ฐ ๊ฐ๋จํฉ๋๋ค. ์ผ๋ถ ๋ด๋ท ๋ ธ๋๊ฐ ์๋ฒ์ ๋ํ ๋ฌด์ฐจ๋ณ ์ํธ ๋์ ์ ์๋ํ๋ ๊ฒฝ์ฐ ์ด ๋ ธ๋ ์์ฒด๊ฐ ๋ฌด์ฐจ๋ณ ๋จ์ ์ํธ์ ์ํด ์บก์ฒ๋์์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ์ฆ, ์ก์ธ์คํ๋ ค๋ฉด ๋ณด๋ตํ๋ฉด๋ฉ๋๋ค.
์ด๊ฒ์ด ๋ฐ๋ก bhunter๊ฐ ์๋ํ๋ ๋ฐฉ์์ ๋๋ค. ํฌํธ 22(SSH ์๋น์ค)๋ฅผ ์์ ํ๊ณ ์ฐ๊ฒฐ์ ์๋ํ๋ ๋ชจ๋ ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์์งํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์์ง๋ ๋น๋ฐ๋ฒํธ๋ฅผ ์ด์ฉํด ๊ณต๊ฒฉ ๋ ธ๋์ ์ฐ๊ฒฐ์ ์๋ํ๋ค.
์์ ์๊ณ ๋ฆฌ์ฆ
ํ๋ก๊ทธ๋จ์ ๋ณ๋์ ์ค๋ ๋์์ ์๋ํ๋ 2๊ฐ์ ์ฃผ์ ๋ถ๋ถ์ผ๋ก ๋๋ ์ ์์ต๋๋ค. ์ฒซ ๋ฒ์งธ๋ ํ๋ํ์ด๋ค. ๋ก๊ทธ์ธ ์๋๋ฅผ ์ฒ๋ฆฌํ๊ณ ๊ณ ์ ํ ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ(์ด ๊ฒฝ์ฐ ๋ก๊ทธ์ธ + ๋น๋ฐ๋ฒํธ ์์ ํ๋์ ์ ์ฒด๋ก ๊ฐ์ฃผ๋จ)๋ฅผ ์์งํ๋ฉฐ ์ถ๊ฐ ๊ณต๊ฒฉ์ ์ํด ์ฐ๊ฒฐ์ ์๋ํ IP ์ฃผ์๋ฅผ ๋๊ธฐ์ด์ ์ถ๊ฐํฉ๋๋ค.
๋ ๋ฒ์งธ ๋ถ๋ถ์ ๊ณต๊ฒฉ์ ์ง์ ๋ด๋นํฉ๋๋ค. ๋ํ ๊ณต๊ฒฉ์ ๋ ๊ฐ์ง ๋ชจ๋๋ก ์ํ๋ฉ๋๋ค. BurstAttack(๋ฒ์คํธ ๊ณต๊ฒฉ) - ์ผ๋ฐ ๋ชฉ๋ก์ ๋ฌด์ฐจ๋ณ ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ์ SingleShotAttack(๋จ์ผ ๊ณต๊ฒฉ) - ๊ณต๊ฒฉ๋ฐ์ ๋ ธ๋์์ ์ฌ์ฉ๋์์ง๋ง ์์ง ์ฌ์ฉ๋์ง ์์ ๋ฌด์ฐจ๋ณ ๋น๋ฐ๋ฒํธ ์ผ๋ฐ ๋ชฉ๋ก์ ์ถ๊ฐ๋์์ต๋๋ค.
์์ ์งํ ์ต์ํ ์ผ๋ถ ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํ๋ณดํ๊ธฐ ์ํด bhunter๋ /etc/bhunter/defaultLoginPairs ํ์ผ์ ๋ชฉ๋ก์ผ๋ก ์ด๊ธฐํ๋ฉ๋๋ค.
์ธํฐํ์ด์ค
bhunter๋ฅผ ์์ํ๋ ๋ฐฉ๋ฒ์๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค:
ํ์ผ๋ก์
sudo bhunter
์ด๋ฒ ์ถ์๋ฅผ ํตํด ํ ์คํธ ๋ฉ๋ด๋ฅผ ํตํด bhunter๋ฅผ ์ ์ดํ ์ ์์ต๋๋ค. ์ฆ, ๊ณต๊ฒฉ์ ๋ํ ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ ์ถ๊ฐ, ๋ก๊ทธ์ธ ๋ฐ ๋น๋ฐ๋ฒํธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด๋ณด๋ด๊ธฐ, ๊ณต๊ฒฉ ๋์ ์ง์ ๋ฑ์ด ๊ฐ๋ฅํฉ๋๋ค. ํดํน๋ ๋ชจ๋ ๋ ธ๋๋ /var/log/bhunter/hacked.log ํ์ผ์์ ๋ณผ ์ ์์ต๋๋ค.
tmux ์ฌ์ฉ
sudo bhunter-ts # ะบะพะผะฐะฝะดะฐ ะทะฐะฟััะบะฐ bhunter ัะตัะตะท tmux
sudo tmux attach -t bhunter # ะฟะพะดะบะปััะฐะตะผัั ะบ ัะตััะธะธ, ะฒ ะบะพัะพัะพะน ะทะฐะฟััะตะฝ bhunter
Tmux๋ ๋งค์ฐ ํธ๋ฆฌํ ๋๊ตฌ์ธ ํฐ๋ฏธ๋ ๋ฉํฐํ๋ ์์ ๋๋ค. ํ๋์ ํฐ๋ฏธ๋ ๋ด์ ์ฌ๋ฌ ๊ฐ์ ์ฐฝ์ ๋ง๋ค๊ณ ์ฐฝ์ ํจ๋๋ก ๋ถํ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์คํ ์ค์ธ ํ๋ก์ธ์ค๋ฅผ ์ค๋จํ์ง ์๊ณ ํฐ๋ฏธ๋์ ์ข ๋ฃํ ๋ค์ ๋ก๊ทธ์ธํ ์ ์์ต๋๋ค.
bhunter-ts ์คํฌ๋ฆฝํธ๋ tmux ์ธ์ ์ ์์ฑํ๊ณ ์ฐฝ์ ์ธ ๊ฐ์ ํจ๋๋ก ๋ถํ ํฉ๋๋ค. ๊ฐ์ฅ ํฐ ์ฒซ ๋ฒ์งธ ๋ฉ๋ด์๋ ํ ์คํธ ๋ฉ๋ด๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ์ค๋ฅธ์ชฝ ์๋จ์๋ ํ๋ํ ๋ก๊ทธ๊ฐ ํฌํจ๋์ด ์์ผ๋ฉฐ, ์ฌ๊ธฐ์์ ํ๋ํ์ ๋ก๊ทธ์ธํ๋ ค๋ ์๋์ ๋ํ ๋ฉ์์ง๋ฅผ ๋ณผ ์ ์์ต๋๋ค. ์ค๋ฅธ์ชฝ ํ๋จ ํจ๋์๋ ๋ด๋ท ๋ ธ๋์ ๋ํ ๊ณต๊ฒฉ ์งํ ์ํฉ๊ณผ ์ฑ๊ณต์ ์ธ ํดํน์ ๋ํ ์ ๋ณด๊ฐ ํ์๋ฉ๋๋ค.
์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ์ ๋นํด ์ด ๋ฐฉ๋ฒ์ ์ฅ์ ์ Bhunter๊ฐ ์์
์ ์ค๋จํ์ง ์๊ณ ๋ ํฐ๋ฏธ๋์ ์์ ํ๊ฒ ๋ซ๊ณ ๋์ค์ ๋ค์ ๋์์ฌ ์ ์๋ค๋ ๊ฒ์
๋๋ค. tmux์ ๋ํด ์ ๋ชจ๋ฅด๋ ์ฌ๋๋ค์๊ฒ ์ ์ํฉ๋๋ค.
์๋น์ค๋ก
systemctl enable bhunter
systemctl start bhunter
์ด ๊ฒฝ์ฐ ์์คํ ์์ ์ bhunter ์๋ ์์์ ํ์ฑํํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์์๋ bhunter์์ ์ํธ์์ฉ์ด ์ ๊ณต๋์ง ์์ผ๋ฉฐ, ํดํน๋ ๋ ธ๋ ๋ชฉ๋ก์ /var/log/bhunter/hacked.log์์ ์ป์ ์ ์์ต๋๋ค.
ํจ๊ณผ
bhunter์์ ์์ ํ๋ ๋์ ์ ๋ ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด, ๋ผ์ฐํฐ(ํนํ mikrotik), ์น ์๋ฒ, ํ๋ ์ฑ๊ตด์ฅ(์ํ๊น๊ฒ๋ ์ก์ธ์ค๋ ๋ฎ ๋์์ ์ด๋ฃจ์ด์ก๊ธฐ ๋๋ฌธ์ ํฅ๋ฏธ๋กญ์ง ์์) ๋ฑ ์์ ํ ๋ค๋ฅธ ์ฅ์น๋ฅผ ์ฐพ์ ์ก์ธ์คํ ์ ์์์ต๋๋ค. ์ด์ผ๊ธฐ). ๋ค์์ ๋ฉฐ์น ๊ฐ์ ์์ ํ ํดํน๋ ๋ ธ๋ ๋ชฉ๋ก์ ๋ณด์ฌ์ฃผ๋ ํ๋ก๊ทธ๋จ์ ์คํฌ๋ฆฐ์ท์ ๋๋ค.
๋ถํํ๊ฒ๋ ์ด ๋๊ตฌ์ ํจ๊ณผ๋ ๊ธฐ๋์ ๋ฏธ์น์ง ๋ชปํ์ต๋๋ค. bhunter๋ ๋ฉฐ์น ๋์ ๋
ธ๋์ ๋ํ ์ํธ๋ฅผ ์๋ํ ์ ์์ง๋ง ์ฑ๊ณตํ์ง ๋ชปํ ์ ์์ผ๋ฉฐ ๋ช ์๊ฐ ์์ ์ฌ๋ฌ ๋์์ ํดํนํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ ์๋ก์ด ๋ด๋ท ์ํ์ด ์ ๊ธฐ์ ์ผ๋ก ์ ์
๋๊ธฐ์๋ ์ถฉ๋ถํฉ๋๋ค.
ํจ์จ์ฑ์ bhunter๊ฐ ์๋ ์๋ฒ๊ฐ ์์นํ ๊ตญ๊ฐ, ํธ์คํ ๋ฐ IP ์ฃผ์๊ฐ ํ ๋น๋๋ ๋ฒ์์ ๊ฐ์ ๋งค๊ฐ๋ณ์์ ์ํฅ์ ๋ฐ์ต๋๋ค. ์ ๊ฒฝํ์ ํ ํธ์คํ ์ ์ฒด์์ ๋ ๋์ ๊ฐ์ ์๋ฒ๋ฅผ ์๋ํ๋๋ฐ ๊ทธ ์ค ํ ๋๊ฐ ๋ด๋ท ๊ณต๊ฒฉ์ 2๋ฐฐ ๋ ์์ฃผ ๋ฐ์ ๊ฒฝ์ฐ๊ฐ ์์์ต๋๋ค.
์์ง ๊ณ ์น์ง ๋ชปํ ๋ฒ๊ทธ๋ค
๊ฐ์ผ๋ ํธ์คํธ๋ฅผ ๊ณต๊ฒฉํ ๋ ์ด๋ค ์ํฉ์์๋ ๋น๋ฐ๋ฒํธ๊ฐ ์ฌ๋ฐ๋ฅธ์ง ์ฌ๋ถ๋ฅผ ๋ช ํํ๊ฒ ํ๋จํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ๋ /var/log/debug.log ํ์ผ์ ๊ธฐ๋ก๋ฉ๋๋ค.
SSH์ ํจ๊ป ์๋ํ๋ ๋ฐ ์ฌ์ฉ๋๋ Paramiko ๋ชจ๋์ ๋๋๋ก ์๋ชป ๋์ํฉ๋๋ค. ํธ์คํธ์ ์ฐ๊ฒฐ์ ์๋ํ ๋ ๋์์ด ํธ์คํธ์ ์๋ต์ ๊ธฐ๋ค๋ฆฝ๋๋ค. ํ์ด๋จธ๋ฅผ ์คํํ์ง๋ง ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ง ๋ชปํ์ต๋๋ค.
๋ ์ด๋ค ์์ ์ด ํ์ํฉ๋๊น?
์๋น์ค ์ด๋ฆ
RFC-4253์ ๋ฐ๋ฅด๋ฉด ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ค์น ์ ์ SSH ํ๋กํ ์ฝ์ ๊ตฌํํ๋ ์๋น์ค์ ์ด๋ฆ์ ๊ตํํฉ๋๋ค. ์ด ์ด๋ฆ์ ํด๋ผ์ด์ธํธ์ธก ์์ฒญ๊ณผ ์๋ฒ์ธก ์๋ต ๋ชจ๋์ ํฌํจ๋ "SERVICE NAME" ํ๋์ ํฌํจ๋์ด ์์ต๋๋ค. ํ๋๋ ๋ฌธ์์ด์ด๋ฉฐ ํด๋น ๊ฐ์ Wireshark ๋๋ nmap์ ์ฌ์ฉํ์ฌ ์ฐพ์ ์ ์์ต๋๋ค. OpenSSH์ ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
$ nmap -p 22 ***.**.***.** -sV
Starting Nmap ...
PORT STATE SERVICE VERSION
22/tcp open ssh <b>OpenSSH 7.9p1 Debian 10+deb10u2</b> (protocol 2.0)
Nmap done: 1 IP address (1 host up) scanned in 0.47 seconds
๊ทธ๋ฌ๋ Paramiko์ ๊ฒฝ์ฐ ์ด ํ๋์๋ "Paramiko Python sshd 2.4.2"์ ๊ฐ์ ๋ฌธ์์ด์ด ํฌํจ๋์ด ์์ด ํธ๋ฉ์ "ํผ"ํ๋๋ก ์ค๊ณ๋ ๋ด๋ท์ ์ซ์๋ผ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด ๋ผ์ธ์ ์ข ๋ ์ค๋ฆฝ์ ์ธ ๋ผ์ธ์ผ๋ก ๊ต์ฒดํ๋ ๊ฒ์ด ํ์ํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋ค๋ฅธ ๋ฒกํฐ
SSH๊ฐ ์๊ฒฉ ๊ด๋ฆฌ์ ์ ์ผํ ์๋จ์ ์๋๋๋ค. ํ ๋ท, rdp๋ ์์ต๋๋ค. ์์ธํ ์ดํด๋ณผ ๊ฐ์น๊ฐ ์์ต๋๋ค.
์ ์ฅ
์ฌ๋ฌ ๊ตญ๊ฐ์ ์ฌ๋ฌ ๊ฐ์ ํธ๋ฉ์ ๋๊ณ ๊ทธ ํธ๋ฉ์์ ๋ก๊ทธ์ธ, ๋น๋ฐ๋ฒํธ, ํดํน๋ ๋ ธ๋๋ฅผ ์ค์์์ ๊ณตํต ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์์งํ๋ฉด ์ข์ ๊ฒ์ ๋๋ค.
์ด๋์์ ๋ค์ด๋ก๋ํ ์ ์์ต๋๊น?
์ด ๊ธ์ ์ฐ๋ ์์ ์๋ ํ
์คํธ ๋ฒ์ ๋ง ์ค๋น๋์ด ์์ผ๋ฉฐ ๋ค์์์ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
์ถ์ฒ : habr.com