1. Wail2ban ์†Œ๊ฐœ

– Wail2ban ์€ Windows ์šด์˜์ฒด์ œ ๋Œ€์ƒ์œผ๋กœ RDP(์›๊ฒฉ๋ฐ์Šคํฌํƒ‘)์— ๋Œ€ํ•˜์—ฌ Brute-force Attack(ํŒจ์Šค์›Œ๋“œ ๋ฌด์ฐจ๋ณ„ ๋Œ€์ž…๊ณต๊ฒฉ) ์— ๋Œ€ํ•œ ๋ฐฉ์–ด๋ฅผ ์œ„ํ•œ ์ž๋™ ๋ณด์•ˆ์„ค์ • ์Šคํฌ๋ฆฝํŠธ์ž…๋‹ˆ๋‹ค.
ํ•ด๋‹น ์Šคํฌ๋ฆฝํŠธ๋Š” ํŒŒ์›Œ์‰˜(PowerShell)๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ, ์›์ž‘์ž๋Š” โ€œKatie McLaughlinโ€ ๋กœ์จ ํ•ด๋‹น ์ฝ”๋“œ์— ๋Œ€ํ•œ ์žฌ๋ฐฐํฌ์‹œ์—๋Š” ๋ฐ˜๋“œ์‹œ ํ•˜๊ธฐURL ์˜ โ€œCopy Right Noticeโ€ ๋ฅผ ๋ช…์‹œํ•ด์•ผ ๋ฉ๋‹ˆ๋‹ค.
์ผ๋ฐ˜์ ์œผ๋กœ Windows Server ํ™˜๊ฒฝ์—์„œ๋Š” Administrator ์‚ฌ์šฉ์ž(๊ณ„์ •๋ช…)์„ ๋น„ํ™œ์„ฑํ™” ์‹œ์ผœ ๋†“์œผ๋ฉฐ, ๊ณต๊ฒฉ์ž๊ฐ€ ์ถ”์ธกํ•˜๊ธฐ ์–ด๋ ค์šด ์‚ฌ์šฉ์ž(User name)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์›๊ฒฉ๋ฐ์Šคํฌํƒ‘(RDP)์˜ ๊ธฐ๋ณธ ํฌํŠธ (TCP3389)์— ๋Œ€ํ•˜์—ฌ ๋‹ค๋ฅธ ํฌํŠธ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉฐ, ๋„คํŠธ์›Œํฌ ๋ ˆ๋ฒจ์—์„œ์˜ IDS/IPS ์™€ ๊ฐ™์€ ๋ณด์•ˆ์žฅ๋น„๋ฅผ ์ ์šฉ ํ•˜์—ฌ ๋ณด์•ˆ ๊ณต๊ฒฉ์„ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉ์„ ๊ถŒ๊ณ ํ•˜๋Š” ๊ณ ๊ฐ ๋Œ€์ƒ์€ ๋„คํŠธ์›Œํฌ ๋ ˆ๋ฒจ์˜ ๋ณด์•ˆ ์žฅ๋น„๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉฐ. ๊ธฐ๋ณธ ๊ณ„์ •(Administrator)๊ณผ ๊ธฐ๋ณธ RDP ํฌํŠธ(TCP 3389)๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜์‹œ๋Š” โ€œBrute-force ๊ณต๊ฒฉโ€์˜ ํ”ผํ•ด ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์œผ์‹  ๊ณ ๊ฐ ๋Œ€์ƒ์ž…๋‹ˆ๋‹ค.
ํ•ด๋‹น ์Šคํฌ๋ฆฝํŠธ์˜ ๋™์ž‘์›๋ฆฌ๋Š” Windows ๋‚ด๋ถ€ ๋ณด์•ˆ๊ฐ์‚ฌ ๋กœ๊ทธ(์ด๋ฒคํŠธ ๋ทฐ์–ด)์— RDP ์ ‘์† ์‹คํŒจ(Event ID #4625)์— ํฌํ•จ๋œ ์ ‘์†์ž IP ๋ฅผ ๊ฐ์ง€ํ•˜์—ฌ 5ํšŒ ์ด์ƒ ์ ‘์†์‹คํŒจ์‹œ Windows Firewall ์„ค์ •(Block)์„ ํ†ตํ•˜์—ฌ5๋ถ„(300์ดˆ) ๋™์•ˆ ์ ‘์† ์ฐจ๋‹จ์„ ํ•˜๋ฉฐ, ์ดํ›„ ๋™์ผ IP ๋กœ 5ํšŒ ์ด์ƒ ์ ‘์† ์‹คํŒจ์‹œ 25๋ถ„(1500์ดˆ), 125๋ถ„(7500์ดˆ )๋กœ ์ฐจ๋‹จ ์‹œ๊ฐ„์ด ์ ์  ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.
– IBM Cloud(ํ…Œ์ŠคํŠธ ์™„๋ฃŒ ๊ธฐ์ค€): Windows Server 2012, 2012R2, 2016
์ œ์ž‘์‚ฌ Github: https://github.com/glasnt/wail2ban

2. Wail2ban ์„ค์น˜๋ฐฉ๋ฒ•

์Šคํฌ๋ฆฝํŠธ ์„ค์น˜ ์ „์— Windows RDP ์ธ์ฆ๋ฐฉ์‹์—์„œ โ€œAllow connections only from computers running RDP with NLA(Network Level Authentication)โ€ ๋ฅผ ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค. NLA ์˜ต์…˜์„ ํ•ด์ œํ•˜๋Š” ์ด์œ ๋Š” ์ด๋ฒคํŠธ๋ทฐ์–ด์˜ ๋ณด์•ˆ๊ฐ์‚ฌ ๋กœ๊ทธ์—์„œ ์ ‘์†์ž IP ๊ฐ€ ๋กœ๊น…์ด ๋˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ์ž…๋‹ˆ๋‹ค. ํ•˜์œ„ ๋ฒ„์ „์˜ ์›๊ฒฉ๋ฐ์Šคํฌํƒ‘ ํด๋ผ์ด์–ธํŠธ์—์„œ๋Š” ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•˜์—ฌ NLA ๋ฅผ ํ•ด์ œํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์œผ๋ฉฐ, ํ•ด์ œ ์‹œ์—๋Š” ์šด์˜์ฒด์ œ ๋ ˆ๋ฒจ์—์„œ ์›๊ฒฉ๋ฐ์Šคํฌํƒ‘์— ๋Œ€ํ•œ ์ธ์ฆ์„ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ ์›๊ฒฉ๋ฐ์Šคํฌํƒ‘ ์ ‘์†์— ๋Œ€ํ•œ ๋ถ€ํ•˜๊ฐ€ ๋†’์•„์ง์œผ๋กœ DDoS ๊ณต๊ฒฉ ๋ฐœ์ƒ์‹œ ๋ถ€ํ•˜๊ฐ€ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜๊ฐ€ ์žˆ์Œ์œผ๋กœ ์ฐธ๊ณ ํ•˜์…”์„œ ์˜ต์…˜ ์„ค์ • ํ•„์š”์‹œ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •์„ ๋ฐ”๊พธ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.
๋‹ค๋งŒ, ์„œ๋‘์—์„œ ์–ธ๊ธ‰ํ•˜์—ฌ ๋“œ๋ฆฐ ๋Œ€๋กœ, ๊ธฐ๋ณธ ๊ณ„์ •๊ณผ ๊ธฐ๋ณธ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ํ•˜๋‚˜์˜ ๊ณ„์ •์„ ๊ณต์œ ํ•˜๋Š” ๊ฒฝ์šฐ, ๋„คํŠธ์›Œํฌ ์ˆ˜์ค€์˜ ๋ณด์•ˆ์žฅ๋น„(๋ฐฉํ™”๋ฒฝ, IDS/IPS)์ด ์—†์„ ๊ฒฝ์šฐ์—๋Š” ํ•ด๋‹น ์Šคํฌ๋ฆฝํŠธ ์„ค์น˜๋ฅผ ์œ„ํ•˜์—ฌ ํ•ด์ œํ•˜๊ณ  ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
– NLA ๊ด€๋ จ MS ๊ธฐ์ˆ ๋ฌธ์„œ: https://technet.microsoft.com/ko-kr/library/cc732713(v=ws.11).aspx
๋‚ด์ปดํ“จํ„ฐ -> ์šฐ์ธกํด๋ฆญ -> ์†์„ฑ -> ์›๊ฒฉ์„ค์ •(Remote Settings) -> NLA ์ฒดํฌ ํ•ด์ œ -> ํ™•์ธ
์œ„์˜ ๋‹จ๊ณ„๊ฐ€ ๋ณต์žกํ•˜์‹  ๋ถ„์€ ๊ทธ๋ƒฅ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์ˆ˜์ • ๋ช…๋ น์„ ํ†ตํ•˜์—ฌ ๋ฐ”๋กœ ์ ์šฉ ํ•˜์‹ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
์‹œ์ž‘ -> ์‹คํ–‰ -> ์•„๋ž˜ ๋ช…๋ น์–ด ๋ถ™์—ฌ ๋„ฃ๊ธฐ
โ€œREG ADD “HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp” /v “UserAuthentication” /t REG_DWORD /d 0 /fโ€
์ œ์ž‘์ž๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํŒŒ์›Œ์‰˜๋กœ ์ž‘์„ฑ๋œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์•„๋ž˜ URL ์„ ํ†ตํ•˜์—ฌ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
๋‹ค์šด๋กœ๋“œํ•œ ํŒŒ์ผ์„ โ€œc:/scripts/wail2banโ€ ํด๋”์— ์••์ถ•์„ ํ•ด์ œํ•˜์—ฌ ์ด๋™์‹œํ‚ต๋‹ˆ๋‹ค.

๊ด€๋ฆฌ๋„๊ตฌ(Administrative Tolls)์— ์กด์žฌํ•˜๋Š” Task Scheduler ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

– Task Scheduler ์šฐ์ธก ์œ„์— ์กด์žฌํ•˜๋Š” โ€œImport Taskโ€ ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

 

๋‹ค์šด๋กœ๋“œ ๋ฐ›์€ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์กด์žฌํ•˜๋Š” ํด๋”์—์„œ โ€œstart wail2ban onstartup.xmlโ€ ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ขŒ์ธก ์œ„์— Task Scheduler Library ๋ฅผ ํด๋ฆญํ•ด ๋ณด๋ฉด ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด wail2ban ์ž‘์—…์ด ๋“ฑ๋ก์ด ๋˜์—ˆ์œผ๋ฉฐ, ํ–ฅํ›„์— ์„œ๋ฒ„๊ฐ€ ๋ฆฌ๋ถ€ํŒ… ๋  ๋•Œ ๋งˆ๋‹ค ์ž๋™์ ์œผ๋กœ ๋ณด์•ˆ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

์ด์ œ ํด๋ผ์ด์–ธํŠธ์žฅ๋น„(์›๊ฒฉ๋ฐ์Šคํฌํƒ‘ ํด๋ผ์ด์–ธํŠธ)์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•œ ์„œ๋ฒ„์— ์ ‘์†์„ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ํŒจ์Šค์›Œ๋“œ๋ฅผ 5ํšŒ ์ž…๋ ฅํ•˜๋ฉด ์ž๋™์œผ๋กœ ์•„๋ž˜์™€ ๊ฐ™์ด ์ ‘์†์ด ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค.

์‹ค์‹œ๊ฐ„์œผ๋กœ โ€œRDP(์›๊ฒฉ๋ฐ์Šคํฌํƒ‘)โ€ ์ ‘์† ์‹คํŒจ ๋ฐ ์ฐจ๋‹จIP ์— ๋Œ€ํ•˜์—ฌ ํ™•์ธ์„ ํ•˜๊ณ  ์‹ถ์œผ๋ฉด, ๋‹ค์šด๋กœ๋“œ ๋ฐ›์€ ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ ์ค‘์— โ€œstart_wail2ban.batโ€๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ ‘์†IP์™€ ์‹คํŒจ ํšŸ์ˆ˜ ๊ทธ๋ฆฌ๊ณ  ์ฐจ๋‹จ ์‹œ๊ฐ„๊นŒ์ง€ ํ™•์ธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ํ•ด๋‹น ๋ฐฐ์น˜ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š์•„๋„ ๋ฐฑ๊ทธ๋ผ์šด๋“œ๋กœ ์‹คํ–‰์ด ๋˜๊ณ  ์žˆ์Œ์œผ๋กœ ์ฐจ๋‹จ ๊ธฐ๋Šฅ์€ ์ด๋ฏธ ๋™์ž‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ดˆ์—๋Š” 300์ดˆ(5๋ถ„)๋™์•ˆ ํ•ด๋‹น ์ ‘์†์ž IP ์— ๋Œ€ํ•˜์—ฌ ์ฐจ๋‹จ์„ ํ•ฉ๋‹ˆ๋‹ค.

๋งŒ์•ฝ์— ์ ‘์†์ด ์ฐจ๋‹จ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด, ์ ‘์† ๋Œ€์ƒ ์„œ๋ฒ„์˜ ์ด๋ฒคํŠธ๋ทฐ์–ด์˜ ๋ณด์•ˆ๊ฐ์‚ฌ๋กœ๊ทธ์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋กœ๊ทธ์ธ ์‹คํŒจ ์ด๋ฒคํŠธID# 4625์—์„œ ์ ‘์†์ž Source IP ๊ฐ€ ๋ณด์ด๋Š”์ง€ ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด Source IP ๊ฐ€ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค๋ฉด, ์›๊ฒฉ์ ‘์† ์„ค์ •์—์„œ NLA ์— ๋Œ€ํ•œ ์ฒดํฌ ํ•ด์ œ๋ฅผ ๋‹ค์‹œ ํ•œ๋ฒˆ ํ™•์ธ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ผ๋ฉฐ, IP ๊ฐ€ ๋ณด์ด๋Š”๋ฐ๋„ ์ฐจ๋‹จ์ด ๋˜์ง€๋ฅผ ์•Š๋Š”๋‹ค๋ฉด, Windows ์„œ๋ฒ„์˜ ๋„คํŠธ์›Œํฌ ๋ฐฉํ™”๋ฒฝ์ด ์ •์ƒ์ ์œผ๋กœ On ์ƒํƒœ์ด๋ฉฐ ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค์— ์ ์šฉ ์ค‘์ธ์ง€ ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
์ •์ƒ์ ์œผ๋กœ ์ฐจ๋‹จ์ด ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•œ ํ›„์— ์„œ๋ฒ„์—์„œ Windows ๋ฐฉํ™”๋ฒฝ Rule ์„ ํ™•์ธํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ํ•ด๋‹น IP ์— ๋Œ€ํ•˜์—ฌ ์ฐจ๋‹จ(Block) Rule ์ด ์ž๋™์œผ๋กœ ์„ค์ •๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
– Administrative Tools -> Windows Firewall with Advanced Security
๋™์ผํ•œ IP ์— ๋Œ€ํ•˜์—ฌ ์ถ”๊ฐ€๋กœ 5ํšŒ ์ด์ƒ ์ž˜๋ชป๋œ ์›๊ฒฉ๋ฐ์Šคํฌํƒ‘ ์ธ์ฆ์‹คํŒจ์‹œ ์ตœ์ดˆ 300์ดˆ(5๋ถ„)์—์„œ ์ ‘์† ์ฐจ๋‹จ์‹œ๊ฐ„์€ 1500์ดˆ(25๋ถ„)์œผ๋กœ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

3. IP์ฐจ๋‹จ ๋ณต๊ตฌ ๋ฐฉ๋ฒ•

์ฐจ๋‹จ๋œ IP ๋Š” Windows Firewall Rule ์„ค์ •์„ Disable ํ•˜๊ฑฐ๋‚˜ Delete ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋ณต๊ตฌํ•  ์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

4. Wail2ban ์ œ๊ฑฐ ๋ฐฉ๋ฒ•

์ตœ์ดˆ์— ๋“ฑ๋กํ•œ Task Schedule ์—์„œ wail2ban ์„ ์ œ๊ฑฐํ•œ ํ›„์— ๋ฆฌ๋ถ€ํŒ… ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

ํ† ๋ก  ์ฐธ๊ฐ€

์ด๋ฉ”์ผ์€ ๊ณต๊ฐœ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•„์ˆ˜ ์ž…๋ ฅ์ฐฝ์€ * ๋กœ ํ‘œ์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.