MS/Windows

Windows 10 λ ˆλ“œμŠ€ν†€ 1 λ²„μ „μ—μ„œ SSH μ„œλ²„ μ‚¬μš©κ³Ό μ£Όμ˜μ‚¬ν•­

Neon K.I.D 2016. 8. 11. 22:20
λ°˜μ‘ν˜•

μœˆλ„μš°10 λ ˆλ“œμŠ€ν†€1 버전이 μΆœμ‹œλœ 이후, μ €λŠ” μ΄λŸ°μ €λŸ° 일둜 Windows둜 λΆ€νŒ…μ„ ν•˜κ²Œ λ˜μ—ˆλŠ”λ°, 였늘 μ–΄μ©Œλ‹€λ³΄λ‹ˆ 제 λ…ΈνŠΈλΆμ— μ—„μ²­λ‚œ 헛점이 μžˆλ‹€λŠ” 것을 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.



λ°–μ—μ„œ λ…ΈνŠΈλΆμ„ μ“°λ‹€ μ΄λ‘€μ μœΌλ‘œ μΌμ–΄λ‚œ 일..

였늘 밖에 λ…ΈνŠΈλΆμ„ λ“€κ³ λ‚˜κ°€μ„œ μž‘μ—…μ„ ν•˜λ˜ 쀑, 곡개 Wi-Fiλ₯Ό μ“°κ²Œ λ˜μ—ˆλŠ”λ°, μ €λŠ” 항상 곡개 Wi-Fiλ₯Ό μ“°κΈ° 전에, κ²€μ‚¬ν•΄λ³΄λŠ” 것이 μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ 포트 번호 μ²΄ν‚ΉμΈλ°μš”. μ™œ 이것을 μ²΄ν‚Ήν•˜λƒλ©΄, ν˜Ήμ‹œλΌλ„ Windows의 경우, μ‚¬μš©ν•˜λ‹€κ°€ λ‚˜λ„ λͺ¨λ₯΄κ²Œ ν”„λ‘œκ·Έλž¨μ„ μ„€μΉ˜ν–ˆλŠ”λ°, KMS Emulator λ“±κ³Ό 같은 μ•…μ„± ν”„λ‘œκ·Έλž¨μ΄ μ„€μΉ˜λ˜μ—ˆλŠ”μ§€λ₯Ό ν™•μΈν•˜κΈ° μœ„ν•΄μ„œμž…λ‹ˆλ‹€. 곡개 Wi-FiλŠ” λˆ„κ΅¬λ‚˜ λ“€μ–΄μ˜¬ 수 있기 λ•Œλ¬Έμ— 포트번호 ν•˜λ‚˜ν•˜λ‚˜λΌλ„ 쑰심해야겠죠?


그런데, μ—¬νƒœκΉŒμ§€ Windowsμ—μ„œ 보지 λͺ»ν–ˆλ˜ 포트 번호 1κ°œκ°€ μ—΄λ €μžˆμ—ˆμŠ΅λ‹ˆλ‹€.



λ°”λ‘œ 22번 포트번호의 LISTEN μƒνƒœμΈλ°, 사싀 Windowsμ—μ„œ 원격을 μ‚¬μš©ν•œλ‹€λ©΄, RDPλ₯Ό 주둜 μ‚¬μš©ν•˜μ§€, SSHλŠ” 잘 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 기본으둜 μ œκ³΅ν•˜μ§€ μ•Šμ„ λΏλ”λŸ¬ μ„œλ²„κ°€ μ•„λ‹ˆλ©΄ ꡳ이 μ‰˜μ„ μ›κ²©μœΌλ‘œ μ—°κ²°ν•  수 μžˆκ²Œλ” ν•˜μ§€ μ•Šμ§€μš”. 그런데, λ†€λžκ²Œλ„ μ œκ°€ μ‚¬μš©ν•˜λ˜ Windows에 이런 일이 λ²Œμ–΄μ§„ κ²ƒμž…λ‹ˆλ‹€.


제 λ…ΈνŠΈλΆμ€ λ‹Ήμ‹œ, Administrator의 둜컬 계정이 μ—΄λ €μžˆλ˜ μƒνƒœμ˜€κ³ , νŒ¨μŠ€μ›Œλ“œ μ‘°μ°¨ κ±Έλ €μžˆμ§€ μ•Šμ•˜λ˜ μƒνƒœλΌ λ§Œμ•½ λˆ„κ΅°κ°€κ°€ μ ‘μ†ν–ˆλ‹€λ©΄ λ¬΄λ°©λΉ„ν•˜κ²Œ 해킹을 λ‹Ήν•  μˆ˜λ„ μžˆμ—ˆλ˜ μƒν™©μ΄μ—ˆμŠ΅λ‹ˆλ‹€. 



Windows λ‚΄ SSH μ„œλ²„ 쑴재 확인

μœˆλ„μš° μš΄μ˜μ²΄μ œμ—μ„œ SSH μ„œλ²„λ₯Ό κ°€λ™ν•˜λ €λ©΄, μ˜ˆμ „μ—λŠ” OpenSSH Server ν”„λ‘œκ·Έλž¨μ„ λ‹€μš΄λ‘œλ“œ λ°›μ•„ μ„€μΉ˜ν•˜μ—¬ μ‚¬μš©ν•˜λŠ” κ²ƒμœΌλ‘œ μ•Œκ³  μžˆμŠ΅λ‹ˆλ‹€. Windowsμ—μ„œλŠ” 기본적으둜 SSH μ„œλΉ„μŠ€λ₯Ό μ§€μ›ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ—, μ¨λ“œ νŒŒν‹° μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό λ”°λ‘œ μ„€μΉ˜ν•΄ μ‚¬μš©ν•˜λŠ” 방법이 μ΅œμ„ μΈ κ²ƒμ΄μ§€μš”.


그런데, μ €λŠ” OpenSSH Clientλ₯Ό μ‚¬μš©ν–ˆλ‹€λ©΄ μ‚¬μš©ν–ˆμ„μ§€ λͺ°λΌλ„, Server ν”„λ‘œκ·Έλž¨μ€ μ„€μΉ˜ν•œ 적이 μ—†λŠ”λ°, μ–΄λ–»κ²Œ λœκ±΄μ§€ 22번 ν¬νŠΈκ°€ μ—΄λ € μžˆμ–΄μ„œ ν˜Ήμ‹œλ‚˜ 함에 WSLμ—μ„œ μž‘λ™ν•˜λŠ” 것이 μ•„λ‹Œκ°€ν•˜μ—¬ 확인을 ν•΄λ΄€μŠ΅λ‹ˆλ‹€.



ν•˜μ§€λ§Œ WSLμ—μ„œλŠ” SSH 데λͺ¬μ΄ λ™μž‘ν•˜κ³  μžˆμ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. 


ν™•μΈν•˜λ‹€ λͺ»ν•΄ 아무리 생각해도 SSHκ°€ λ™μž‘ν•˜κ³  μžˆμ„λ§Œν•œ ν”„λ‘œκ·Έλž¨μ„ μ°Ύμ§€ λͺ»ν•΄ μ €λŠ” κ²°κ΅­ Windows Firewallμ—μ„œ μ°Ύμ•„λ³΄κΈ°λ‘œ ν–ˆμŠ΅λ‹ˆλ‹€.



방화벽을 ν™•μΈν•΄λ³΄λ‹ˆ Windows μžμ²΄μ—μ„œ SSH μ„œλ²„κ°€ 돌고 μžˆλŠ” 것을 확인할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. 




Default SSH μ„œλ²„ μ‚¬μš©ν•˜κΈ°

κΈ°λ³Έ SSH μ„œλ²„λŠ” Windows 10 Redstone 1 λ²„μ „μ—μ„œ μƒˆλ‘œμ΄ λ“±μž₯ν•œ λ“―ν•˜μ˜€μŠ΅λ‹ˆλ‹€. 아직 μ„€μΉ˜ν•˜μžλ§ˆμž μžλ™μœΌλ‘œ κ΅¬λ™λ˜λŠ”μ§€λŠ” 확인할 수 μ—†μ—ˆλŠ”λ°, λ§Œμ•½ 본인 PC에 SSH μ„œλ²„λ₯Ό μ‚¬μš©ν•˜κ³  μ‹Άλ‹€λ©΄.(κ·ΈλŸ΄λ¦¬λŠ” 거의 μ—†κ² μ§€λ§Œ ν˜Ήμ‹œλΌλ„...) μ•„λž˜μ™€ 같이 μ„œλΉ„μŠ€λ₯Ό κ΅¬λ™ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.


[μ œμ–΄νŒ] - [μ‹œμŠ€ν…œ 및 λ³΄μ•ˆ] - [관리 도ꡬ] - [μ„œλΉ„μŠ€]



두 개의 μ„œλΉ„μŠ€κ°€ λͺ¨λ‘ κ΅¬λ™λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. λ¬Όλ‘  Broker μ„œλΉ„μŠ€κ°€ λ™μž‘ν•˜λ €λ©΄ Proxy μ„œλΉ„μŠ€κ°€ μžλ™μœΌλ‘œ λ™μž‘ν•˜λ‹ˆ 사싀 κ·Έλ ‡κ²Œ 신경은 μ•ˆμ“°μ…”λ„ λ©λ‹ˆλ‹€. μ„œλΉ„μŠ€κ°€ κ΅¬λ™λ˜λ©΄ λ°”λ‘œ, Windows λ°©ν™”λ²½μ˜ κ²½κ³  μ°½κ³Ό ν•¨κ»˜ ν—ˆμš©μ„ λˆŒλŸ¬μ£Όμ‹œλ©΄ SSH μ„œλ²„κ°€ ν™œμ„±ν™”κ°€ λ©λ‹ˆλ‹€.




SSH μ„œλ²„ μ‚¬μš© μ£Όμ˜μ‚¬ν•­

SSH μ„œλ²„λŠ” μ›κ²©μœΌλ‘œ μ‰˜μ„ μ—°κ²°μ‹œμΌœμ£ΌλŠ” ν”„λ‘œν† μ½œμž…λ‹ˆλ‹€. λ¬Όλ‘  λ¦¬λˆ…μŠ€λŠ” λ³΄μ•ˆμ΄ 많이 κ°•ν™”λ˜μ–΄ μžˆμ–΄μ„œ root κ³„μ •μ˜ 접근을 κΈˆμ§€μ‹œν‚€κ±°λ‚˜ νŒ¨μŠ€μ›Œλ“œκ°€ μ—†λŠ” 계정에 λŒ€ν•΄μ„œλŠ” 접속을 ν•˜μ§€ λͺ»ν•˜κ²Œ 막고 μžˆμ§€λ§Œ Windows에 기본으둜 μžˆλŠ” SSH μ„œλ²„λŠ” κ·Έλ ‡μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œλŠ” ꡉμž₯히 μ€‘μš”ν•œ 문제이기 λ•Œλ¬Έμ— λ°˜λ“œμ‹œ μ½μ–΄μ£Όμ…¨μœΌλ©΄ μ’‹κ² λ„€μš”.


1. SSH μ„œλ²„λ‘œ λ‘œκ·ΈμΈν•˜λ €λŠ” λͺ¨λ“  계정에 λ°˜λ“œμ‹œ νŒ¨μŠ€μ›Œλ“œλ₯Ό μ„€μ •ν•˜μ„Έμš”.

2. 곡개 λ„€νŠΈμ›Œν¬(Wi-Fi, λ³΄μ•ˆ μ—†λŠ” Wi-Fi, WEP을 μ‚¬μš©ν•˜λŠ” Wi-Fi λ“±)μ—μ„œ μ ˆλŒ€ μ‚¬μš©ν•˜μ§€ λ§ˆμ„Έμš”.

3. λ§Œμ•½ 본인이 μ›ν•˜μ§€ μ•Šμ•˜λŠ”λ°, μ„œλΉ„μŠ€κ°€ ꡬ동 쀑이라면 λ°˜λ“œμ‹œ μ •μ§€μ‹œμΌœμ£Όμ„Έμš”.


특히 Administrator λ“±μ˜ 둜컬 κ³„μ •μ—λŠ” 이 μ„œλ²„ μ‚¬μš©μ΄ ꡉμž₯히 μ·¨μ•½ν•©λ‹ˆλ‹€. Windows 8 μ΄μƒμ˜ μš΄μ˜μ²΄μ œμ—μ„œλŠ” Microsoft 온라인 κ³„μ •μœΌλ‘œ 둜그인이 κ°€λŠ₯ν•œλ°, λ¬Όλ‘  이 계정 λ˜ν•œ 고유의 Windows 이름이 μžˆμ–΄μ„œ μ΄κ±Έλ‘œλ„ SSH μ„œλ²„λ₯Ό 톡해 둜그인이 κ°€λŠ₯ν•˜μ§€λ§Œ 온라인 계정은 기본적으둜 νŒ¨μŠ€μ›Œλ“œλ₯Ό μ„€μ •ν•΄μ•Όν•˜κΈ° λ•Œλ¬Έμ— 큰 μœ„ν—˜μ΄ μ‘΄μž¬ν•˜μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€.


ν•˜μ§€λ§Œ Administrator λ“±μ˜ 둜컬 κ³„μ •μ—μ„œλŠ” λΉ„λ°€λ²ˆν˜Έ 없이 Windowsλ₯Ό μ‚¬μš©ν•  수 μžˆλŠ”λ°, μ΄λŠ” SSH μ„œλ²„μ—μ„œλ„ λ˜‘κ°™μ΄ μ μš©λ˜μ–΄ SSH ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ 접속할 λ•Œ, 계정 μž…λ ₯ ν›„ λΉ„λ°€λ²ˆν˜Έλ₯Ό κ³΅λ°±μƒνƒœλ‘œ 두면 λ°”λ‘œ 둜그인이 λ˜λŠ” μ—„μ²­λ‚œ 헛점이 μ‘΄μž¬ν•©λ‹ˆλ‹€.
(사싀 Linuxμ—μ„œλŠ” 이 뢀뢄이 λ§‰ν˜€μžˆμ–΄μ„œ, "μ„€λ§ˆ κ·ΈλŸ¬κ² μ–΄?" ν•˜κ³ , ν…ŒμŠ€νŠΈλ₯Ό μ§„ν–‰ν•΄λ΄€λŠ”λ°, μ—„μ²­λ‚˜κ²Œ μ†Œλ¦„λ‹μ•˜μŠ΅λ‹ˆλ‹€..... )


λ”μš±μ΄ 이 λ¬Έμ œκ°€ 더 μ‹¬ν™”λ˜λ©΄, μ•…μ„± ν”„λ‘œκ·Έλž¨μ΄ μ§μ ‘ 이 μ„œλΉ„μŠ€λ₯Ό μ œμ–΄ν•  수 μžˆλ‹€λŠ” 취약점 λ˜ν•œ 생길 수 있게 λ©λ‹ˆλ‹€. μ‚¬μš©μžκ°€ λͺ¨λ₯΄λŠ” 사이에 μ•…μ„± ν”„λ‘œκ·Έλž¨μ€ μ‚¬μš©μžμ˜ 컴퓨터에 μΉ¨νˆ¬ν•΄, SSH Brokerλ₯Ό μž‘λ™μ‹œν‚¨ ν›„, Administrator 계정을 ν™œμ„±ν™” μ‹œν‚€λŠ” μ½”λ“œλ₯Ό μ‹¬μŠ΅λ‹ˆλ‹€. κ²Œλ‹€κ°€ 이 정보λ₯Ό ν•΄μ»€μ˜ C&C μ„œλ²„ λ“±μœΌλ‘œ 전솑해 원격 ν™˜κ²½μ΄ μ˜€ν”ˆλ  경우, μ‚¬μš©μžλŠ” κ·Έλ“€μ˜ μ‘°μž‘μ— λ†€μ•„λ‚˜κ²Œ 될 κ°€λŠ₯성도 μΆ©λΆ„νžˆ μžˆλ‹€λŠ” 이야기가 λ©λ‹ˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ λ°˜λ“œμ‹œ 둜컬 계정이든, 온라인 계정이든 SSH μ„œλ²„λ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šλ“  이번 λ²„μ „μ—μ„œλŠ” λ°˜λ“œμ‹œ λͺ¨λ“  계정에 νŒ¨μŠ€μ›Œλ“œλ₯Ό κ±Έμ–΄λ‘λŠ” 것이 제일 μ•ˆμ „ν•˜λ‹€κ³  νŒλ‹¨ν•©λ‹ˆλ‹€.



마치며....

λ…ΈνŠΈλΆμ— ꡉμž₯히 μ€‘μš”ν•œ νŒŒμΌλ“€λ„ λ§Žμ§€λ§Œ μ™ΈλΆ€λ‘œ μ—°κ²°λ˜μ–΄ μžˆλŠ” 데이터듀도 μ‘΄μž¬ν•˜μ—¬ λ³΄μ•ˆμ— μ€κ·Όνžˆ 신경을 써야될 뢀뢄듀이 λ§ŽμŠ΅λ‹ˆλ‹€. κ·Έλ ‡κΈ° λ•Œλ¬Έμ— WindowsλŠ” λ”μš± 더 μ‘°μ‹¬ν•΄μ„œ μ‚¬μš©ν•˜κ²Œ 되고, 였늘과 같은 상황이 더 μ‹¬ν™”λ˜λŠ” 것을 막을 수 μžˆμ—ˆλ˜ 계기가 λ˜μ—ˆμŠ΅λ‹ˆλ‹€.


λ§Œμ•½, ν˜Ήμ‹œλΌλ„ 주변에 μžˆλŠ” μ‚¬λžŒλ“€μ΄ λ ˆλ“œμŠ€ν†€ 1 λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜μ˜€λŠ”λ°, 22번 ν¬νŠΈλ²ˆν˜Έκ°€ μž‘λ™ 쀑이라면 Windows μ„œλΉ„μŠ€μ—μ„œ SSH Brokerλ₯Ό μ •μ§€μ‹œμΌœμ£Όμ„Έμš”. μžλ™μœΌλ‘œ λ™μž‘ν•˜λŠ”μ§€μ˜ μ—¬λΆ€λŠ” μ •ν™•ν•˜κ²Œ ν™•μΈν•˜μ§€ λͺ»ν–ˆμ§€λ§Œ, κ·Έλž˜λ„ 이 뢀뢄은 ꡉμž₯히 μ€‘μš”ν•œ λ³΄μ•ˆ μ΄μŠˆμ΄λ―€λ‘œ λ°˜λ“œμ‹œ 짚고 λ„˜μ–΄κ°€μ•Ό ν•  κ²ƒμž…λ‹ˆλ‹€. 

λ°˜μ‘ν˜•