์ด๋ ๋ ์์ฌ๊ฐ "์ ์ผ๋ถ ์ฌ๋๋ค์ ์ถ๊ฐ ์ฌ์ฉ ๊ถํ๋ ๋ฐ์ง ์๊ณ ์
๋ฌด์ฉ ์ปดํจํฐ์ ์๊ฒฉ์ผ๋ก ์ก์ธ์คํ๋ ๊ฑธ๊น์?"๋ผ๊ณ ์ง๋ฌธํ์ต๋๋ค.
ํ์ ์ "๋ซ๋"์์
์ด ๋ฐ์ํฉ๋๋ค.
Chrome ์๊ฒฉ ๋ฐ์คํฌํฑ, AmmyAdmin, LiteManager, TeamViewer, Anyplace Control ๋ฑ ๋คํธ์ํฌ๋ฅผ ํตํ ์๊ฒฉ ์ ์ด๋ฅผ ์ํ ๋ค์ํ ์ ํ๋ฆฌ์ผ์ด์
์ด ์์ต๋๋ค. Chrome ์๊ฒฉ ๋ฐ์คํฌํฑ์ ์๋น์ค ์ก์ธ์ค๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํ ๊ณต์ ๋งค๋ด์ผ์ด ์๋ ๊ฒฝ์ฐ TeamViewer์๋ ์๊ฐ ๋๋ ์์ฒญ์ ๋ํ ๋ผ์ด์ ์ค ์ ํ์ด ์์ต๋๋ค. ๋คํธ์ํฌ์์ ์ฌ์ฉ์๋ ์ด๋ค ์์ผ๋ก๋ "์ด๋ฅผ ๊ฐ๊ณ " ๊ด๋ฆฌ์์๊ฒ "๋น๋๊ณ " ๊ฐ์ธ ์ฉ๋๋ก ๋ง์ ์ฌ๋๋ค์ด ์ ํธํ๋ ๊ฒ์
๋๋ค. AnyDesk๋ ํนํ ์์ฌ๊ฐ "์๋์!"๋ผ๊ณ ๋งํ ๊ฒฝ์ฐ ํน๋ณํ ์ฃผ์๊ฐ ํ์ํฉ๋๋ค.
์ฝํ
์ธ ๋ก ๋คํธ์ํฌ ํจํท์ ์ฐจ๋จํ๋ ๊ฒ์ด ๋ฌด์์ธ์ง ์๊ณ ์ด์ ๋ง์กฑํ๋ค๋ฉด ๋๋จธ์ง ์๋ฃ๋
์๋ํ์ง ์์ ๋น์ ์ ์ํด.
์ฌ์ค์ ๋ฐ๋๋ก ๊ฐ๋ ค๊ณ ๋
ธ๋ ฅ ์ค
์๋ ์ ์ด๋ค ์์ฌ์ค๋ฌ์ด ์ํํธ์จ์ด๋ก ์ฐพ์์จ "Anyplace Control" ์ฐจ๋จ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ, IP ๋ช ๊ฐ๋ง ์ฐจ๋จํ๋ฉด ํด๊ฒฐ๋์์ต๋๋ค(๋ฐฑ์ ์ ๋ฐฑ์ ํด ๋์์ต๋๋ค). AnyDesk์ ๋ฌธ์ ๋ XNUMX๊ฐ๊ฐ ๋๋ IP ์ฃผ์๋ฅผ ์๋์ผ๋ก ์์งํ ํ, ๋ํํ ๋ถ์ถ๊ฒผ์ด ์ผ์์ ์ธ ์ก์ฒด ๋ ธ๋์์ ๋ฒ์ด๋์ธ์.
๋ํ "C:ProgramDataAnyDesk"์๋ ์ค์ ๋ฑ์ด ํฌํจ๋ ํ์ผ์ด ์ฌ๋ฌ ๊ฐ ์๋ ๊ฒ์ผ๋ก ๋ฐํ์ก์ผ๋ฉฐ, ํด๋น ํ์ผ์๋ ad_svc.trace ์ฐ๊ฒฐ ๋ฐ ์คํจ์ ๋ํ ์ด๋ฒคํธ๊ฐ ์์ง๋ฉ๋๋ค.
1. ๊ด์ธก
์ด๋ฏธ ์ธ๊ธํ๋ฏ์ด *.anydesk.com์ ์ฐจ๋จํด๋ ํ๋ก๊ทธ๋จ ์๋์ ์๋ฌด๋ฐ ๊ฒฐ๊ณผ๊ฐ ๋์ค์ง ์์์ผ๋ฏ๋ก ๋ถ์ํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์คํธ๋ ์ค๊ฐ ๋ง์ ์ํฉ์์์ ํ๋ก๊ทธ๋จ ํ๋. Sysinternals์ TCPView๋ฅผ ์์ ๋ค๊ณ ์ด๋ํ์ธ์!
1.1. ์ฐ๋ฆฌ๊ฐ ๊ด์ฌ์ ๊ฐ๋ ์ฌ๋ฌ ํ๋ก์ธ์ค๊ฐ "์ค๋จ"๋์ด ์์ผ๋ฉฐ ์ธ๋ถ์์ ์ฃผ์์ ํต์ ํ๋ ํ๋ก์ธ์ค๋ง์ด ์ฐ๋ฆฌ์ ๊ด์ฌ์ ๋๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ์ฐ๊ฒฐ๋๋ ํฌํธ๋ ๋ด๊ฐ ๋ณธ ๊ฒ ์ค์์ ์ ํ๋ฉ๋๋ค: 80, 443, 6568. ๐ ์ฐ๋ฆฌ๋ ํ์คํ 80๊ณผ 443์ ์ฐจ๋จํ ์ ์์ต๋๋ค.
1.2. ๋ผ์ฐํฐ๋ฅผ ํตํด ํด๋น ์ฃผ์๋ฅผ ์ฐจ๋จํ ํ ์กฐ์ฉํ ๋ค๋ฅธ ์ฃผ์๋ฅผ ์ ํํฉ๋๋ค.
1.3. ์ฝ์์ ์ฐ๋ฆฌ์ ์ ๋ถ์
๋๋ค! ์ฐ๋ฆฌ๋ PID๋ฅผ ๊ฒฐ์ ํ ํ AnyDesk๊ฐ ์๋น์ค์ ์ํด ์ค์น๋์ด ์ด์ด ์ข์์ผ๋ฏ๋ก ์ฐ๋ฆฌ๊ฐ ์ฐพ๊ณ ์๋ PID๊ฐ ์ ์ผํ PID์์ต๋๋ค.
1.4. ํ๋ก์ธ์ค PID๋ก๋ถํฐ ์๋น์ค ์๋ฒ์ IP ์ฃผ์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.
2. ์ค๋น
IP ์ฃผ์ ์๋ณ ํ๋ก๊ทธ๋จ์ ์๋ง๋ ๋ด PC์์๋ง ์๋ํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ํธ์์ฑ๊ณผ ๊ฒ์ผ๋ฆ์ ๋ํ ์ ํ์ด ์์ผ๋ฏ๋ก C#์ ์ฌ์ฉํฉ๋๋ค.
2.1. ํ์ํ IP ์ฃผ์๋ฅผ ์๋ณํ๋ ๋ชจ๋ ๋ฐฉ๋ฒ์ ์ด๋ฏธ ์๋ ค์ ธ ์์ผ๋ฉฐ ์์ง ๊ตฌํ๋์ง ์์์ต๋๋ค.
string pid1_;//ัะทะฝะฐะตะผ PID ัะตัะฒะธัะฐ AnyDesk
using (var p = new Process())
{p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = " /c "tasklist.exe /fi "imagename eq AnyDesk.exe" /NH /FO CsV | findstr "Services""";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.StartInfo.StandardOutputEncoding = Encoding.GetEncoding("CP866");
p.Start();
string output = p.StandardOutput.ReadToEnd();
string[] pid1 = output.Split(',');//ะฟะตัะตะฒะพะดะธะผ ะพัะฒะตั ะฒ ะผะฐััะธะฒ
pid1_ = pid1[1].Replace(""", "");//ะฑะตัะตะผ 2ะน ัะปะตะผะตะฝั ะฑะตะท ะบะฐะฒััะตะบ
}
๋ง์ฐฌ๊ฐ์ง๋ก ์ฐ๊ฒฐ์ ์ค์ ํ ์๋น์ค๋ฅผ ์ฐพ์ ๋ฉ์ธ ํ์ ๋ง ์ ๊ณตํ๊ฒ ์ต๋๋ค.
p.StartInfo.Arguments = "/c " netstat -n -o | findstr /I " + pid1_ + " | findstr "ESTABLISHED""";
๊ทธ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
์ด์ ๋จ๊ณ์ ์ ์ฌํ๊ฒ ํ์์ ์ธ ๋ฒ์งธ ์ด์ ์ถ์ถํ๊ณ ":" ๋ค์ ๋ชจ๋ ํญ๋ชฉ์ ์ ๊ฑฐํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ฐ๋ฆฌ๋ ์ํ๋ IP๋ฅผ ๊ฐ๊ฒ ๋์์ต๋๋ค.
2.2. Windows์์ IP ์ฐจ๋จ. Linux์ Blackhole๊ณผ iptables๊ฐ ์๋ ๊ฒฝ์ฐ Windows์์ ๋ฐฉํ๋ฒฝ์ ์ฌ์ฉํ์ง ์๊ณ IP ์ฃผ์๋ฅผ ํ ์ค๋ก ์ฐจ๋จํ๋ ๋ฐฉ๋ฒ์ ํน์ดํ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ๊ฑฐ๊ธฐ์ ์ด๋ค ๋๊ตฌ๊ฐ ์์๋์ง...
route add ะฝะฐั_ะฝะฐะนะดะตะฝะฝัะน_IP_ะฐะดัะตั mask 255.255.255.255 10.113.113.113 if 1 -p
์ฃผ์ ๋งค๊ฐ๋ณ์ "1์ด๋ฉด" ๊ฒฝ๋ก๋ฅผ ๋ฃจํ๋ฐฑ์ผ๋ก ๋ณด๋ ๋๋ค(๊ฒฝ๋ก ์ธ์๋ฅผ ์คํํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ์ธํฐํ์ด์ค๋ฅผ ํ์ํ ์ ์์ต๋๋ค). ๊ทธ๋ฆฌ๊ณ ์ค์! ์ด์ ํ๋ก๊ทธ๋จ์ ์์ํด์ผ ํฉ๋๋ค. ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก, ๊ฒฝ๋ก๋ฅผ ๋ณ๊ฒฝํ๋ ค๋ฉด ๊ณ ๋๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
2.3. ์๋ณ๋ IP ์ฃผ์๋ฅผ ํ์ํ๊ณ ์ ์ฅํ๋ ๊ฒ์ ๊ฐ๋จํ ์์ ์ด๋ฏ๋ก ์ค๋ช ์ด ํ์ํ์ง ์์ต๋๋ค. ์๊ฐํด๋ณด๋ฉด ํ์ผ์ ์ฒ๋ฆฌํ๋ฉด ๋๊ฒ ์ฃ ad_svc.trace AnyDesk ์์ฒด๋ ๊ทธ๋ฐ๋ฐ ๋น์ฅ ์๊ฐ์ ์ ๋๊ณ + ํ๊ณ๊ฐ ์์ ์๋ ์๊ฒ ๋ค์.
2.4. ํ๋ก๊ทธ๋จ์ ์ด์ํ ๊ณ ๋ฅด์ง ๋ชปํ ๋์์ Windows 10์์ ์๋น์ค ํ๋ก์ธ์ค๋ฅผ "์์ ์ข ๋ฃ"ํ ๋ ์๋์ผ๋ก ๋ค์ ์์๋๊ณ Windows 8์์๋ ์ข ๋ฃ๋์ด ์ฝ์ ํ๋ก์ธ์ค๋ง ๋จ๊ธฐ๊ณ ๋ค์ ์ฐ๊ฒฐํ์ง ์๊ณ ์ผ๋ฐ์ ์ผ๋ก ๋น๋ ผ๋ฆฌ์ ์ด๊ณ ๋ถ์ ํํ๋ค๋ ๊ฒ์ ๋๋ค.
์๋ฒ์ ์ฐ๊ฒฐ๋ ํ๋ก์ธ์ค๋ฅผ ์ ๊ฑฐํ๋ฉด ๋ค์ ์ฃผ์๋ก "๊ฐ์ " ๋ค์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. ์ด์ ๋ช ๋ น๊ณผ ๋์ผํ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋๋ฏ๋ก ๋ค์๊ณผ ๊ฐ์ด ์ค๋ช ํ๊ฒ ์ต๋๋ค.
p.StartInfo.Arguments = "/c taskkill /PID " + pid1_ + " /F";
๋ํ AnyDesk ํ๋ก๊ทธ๋จ์ ์์ํ์ญ์์ค.
//ะทะฐะฟััะบะฐะตะผ ะฟัะพะณัะฐะผะผั ะบะพัะพัะฐั ัะฐัะฟะพะปะพะถะตะฝะฐ ะฟะพ ะฟััะธ path_pro
if (File.Exists(path_pro)){
Process p1 = Process.Start(path_pro);}
2.5. ์ฐ๋ฆฌ๋ AnyDesk์ ์ํ๋ฅผ 1๋ถ์ ํ ๋ฒ์ฉ(๋๋ ๋ ์์ฃผ?) ํ์ธํ๊ณ ์ฐ๊ฒฐ๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ์ฐ๊ฒฐ ์ค์ ๋จ - ์ด IP๋ฅผ ์ฐจ๋จํ๊ณ ๋ค์ ํ๋ฒ ๋ฐ๋ณตํฉ๋๋ค. ์ฐ๊ฒฐ๋ ๋๊น์ง ๊ธฐ๋ค๋ ธ๋ค๊ฐ ์ฐจ๋จํ๊ณ ๊ธฐ๋ค๋ฆฝ๋๋ค.
3. ๊ณต๊ฒฉ
์ฝ๋๋ฅผ "์ค์ผ์น"ํ๊ณ ํ๋ก์ธ์ค๋ฅผ ์๊ฐํํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค."+"๋ ๋ฐ๊ฒฌ๋์ด ์ฐจ๋จ๋ IP๋ฅผ ๋ํ๋ด๋ฉฐ, "."โAnyDesk์์ ์ฑ๊ณต์ ์ธ ์ด์ ์ฐ๊ฒฐ ์์ด ํ์ธ์ ๋ฐ๋ณตํฉ๋๋ค.
๊ฒฐ๊ณผ์ ์ผ๋กโฆ
์ด ํ๋ก๊ทธ๋จ์ AnyDesk 5 ๋ฐ 6 ๋ฒ์ ์ ๋ค์ํ Windows OS๋ฅผ ์ฌ์ฉํ๋ ์ฌ๋ฌ ์ปดํจํฐ์์ ์๋ํ์ต๋๋ค. 500ํ ์ด์ ๋ฐ๋ณตํ์ฌ ์ฝ 80๊ฐ์ ์ฃผ์๊ฐ ์์ง๋์์ต๋๋ค. 2500 - 87 ๋ฑ...
์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ฐจ๋จ๋ IP ์๊ฐ 100๊ฐ ์ด์์ ๋๋ฌํ์ต๋๋ค.
์ต์ข
๋งํฌ ํ
์คํธ ํ์ผ ์ฃผ์:
๋๋ฌ์ต๋๋ค! IP ์ฃผ์ ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ํตํด ๊ธฐ๋ณธ ๋ผ์ฐํฐ์ ๊ท์น์ ์ถ๊ฐ๋์์ผ๋ฉฐ AnyDesk๋ ์ธ๋ถ ์ฐ๊ฒฐ์ ๋ง๋ค ์ ์์ต๋๋ค.
์ด์ํ ์ ์ด ์์ต๋๋ค. ์ด๊ธฐ ๋ก๊ทธ๋ฅผ ๋ณด๋ฉด ํด๋น ์ฃผ์๊ฐ ์ ๋ณด ์ ์ก๊ณผ ๊ด๋ จ๋์ด ์๋ค๋ ๊ฒ์ด ๋ถ๋ช ํฉ๋๋ค. boot-01.net.anydesk.com. ๋ฌผ๋ก , ์ฐ๋ฆฌ๋ ์์น์ ์ผ๋ก ๋ชจ๋ *.net.anydesk.com ํธ์คํธ๋ฅผ ์ฐจ๋จํ์ง๋ง ๊ทธ๊ฒ ์ด์ํ ์ผ์ ์๋๋๋ค. ๋ค๋ฅธ ์ปดํจํฐ์์ ์ ์์ ์ธ ํ์ ๋ณด๋ผ ๋๋ง๋ค ์ด ๋๋ฉ์ธ ์ด๋ฆ์ ๋ค๋ฅธ IP๋ฅผ ์ ๊ณตํฉ๋๋ค. Linux์์ ํ์ธ ์ค:
host boot-01.net.anydesk.com
DNSLookup๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ํ๋์ IP ์ฃผ์๋ง ์ ๊ณตํ์ง๋ง ์ด ์ฃผ์๋ ๊ฐ๋ณ์ ์ ๋๋ค. TCPView ์ฐ๊ฒฐ์ ๋ถ์ํ ๋ ๋ค์ ์ ํ์ IP ์ฃผ์์ ๋ํ PTR ๋ ์ฝ๋๊ฐ ๋ฐํ๋ฉ๋๋ค. ๋ฆด๋ ์ด-*.net.anydesk.com.
์ด๋ก ์ ์ผ๋ก: ํ์ ๋๋๋ก ์๋ ค์ง์ง ์์ ์ฐจ๋จ๋์ง ์์ ํธ์คํธ๋ก ์ด๋ํ๊ธฐ ๋๋ฌธ์ boot-01.net.anydesk.com ์ฐ๋ฆฌ๋ ์ด๋ฌํ IP๋ฅผ ์ฐพ์์ ์ฐจ๋จํ ์ ์์ผ๋ฉฐ, ์ด ๊ตฌํ์ Linux OS์์ ์ผ๋ฐ ์คํฌ๋ฆฝํธ๋ก ๋ง๋ค ์ ์์ต๋๋ค. ์ฌ๊ธฐ์๋ AnyDesk๋ฅผ ์ค์นํ ํ์๊ฐ ์์ต๋๋ค. ๋ถ์ ๊ฒฐ๊ณผ ์ด๋ฌํ IP๋ ์ข ์ข "๊ต์ฐจํ๋ค"์ฐ๋ฆฌ ๋ชฉ๋ก์์ ์ฐพ์ ๊ฒ๊ณผ ํจ๊ป. ์๋ง๋ ํ๋ก๊ทธ๋จ์ด ์๋ ค์ง IP๋ฅผ "์ ๋ ฌ"ํ๊ธฐ ์์ํ๊ธฐ ์ ์ ์ฐ๊ฒฐํ๋ ๊ฒ์ ๋ฐ๋ก ์ด ํธ์คํธ์ผ ๊ฒ์ ๋๋ค. ํ์ฌ๋ก์๋ ํธ์คํธ ๊ฒ์์ ๋ ๋ฒ์งธ ๋ถ๋ถ์ผ๋ก ๊ธฐ์ฌ๋ฅผ ๋์ค์ ๋ณด์ํ ๊ฒ์ ๋๋ค. ํ๋ก๊ทธ๋จ ์์ฒด๋ ์ผ๋ฐ์ ์ผ๋ก ๋คํธ์ํฌ ์ธ๋ถ ์กฐ์ธ ๋ด์ ์ค์น๋์ง ์์ต๋๋ค.
์์ ๋ด์ฉ์์ ๋ถ๋ฒ์ ์ธ ๋ด์ฉ์ ๋ณด์ง ์์ผ์
จ๊ธฐ๋ฅผ ๋ฐ๋ผ๋ฉฐ, AnyDesk ์ ์์๋ ์ ์ ํ๋์ ์คํฌ์ธ ๋งจ๋ค์ด ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํด ์ฃผ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
์ถ์ฒ : habr.com