Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.

Egun batean nagusiak galdera planteatzen duenean: "Zergatik dute pertsona batzuek laneko ordenagailu batera urrutiko sarbidea erabiltzeko baimen gehigarririk lortu gabe?",
zirrikitu bat "estaltzeko" zeregina dago.

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.
Sarean urruneko kontrolerako aplikazio ugari daude: Chrome urruneko mahaigaina, AmmyAdmin, LiteManager, TeamViewer, Anyplace Control, etab. Chrome urruneko mahaigaina zerbitzurako sarbideari aurre egiteko eskuliburu ofiziala badu, TeamViewer-ek lizentzia-murrizketak ditu garaiz edo eskaerak. saretik eta erabiltzaileek "hortzak estutuz" nolabait "distira" egiten dute administratzaileekin, gero askoren gogokoena erabilera pertsonalerako - AnyDesk-ek arreta berezia eskatzen du oraindik, batez ere nagusiak "Ez!" esaten badu.

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.
Badakizu sare pakete baten blokeoa zer den bere edukiaren arabera eta egokitzen zaizun, orduan gainerako materiala
ez asmoa zuretzat.

Alderantziz joan nahian, hain zuzen Online programak funtziona dezan zer baimendu behar duen esaten du, hurrenez hurren, DNS erregistroa blokeatu egin zela *.net.anydesk.com. Baina AnyDesk ez da erraza, ez dio axola domeinu-izen bat blokeatzea.

Behin zalantzazko software batzuekin iritsi zitzaigun "Anyplace Control" blokeatzeko arazoa konpondu nuen, eta IP batzuk soilik blokeatuz konpondu zen (antibirusa bermatu nuen). AnyDesk-en arazoa, dozena bat IP helbide baino gehiago eskuz bildu ondoren, probokatua urrundu eskuzko lan arruntetik.

Era berean, aurkitu da "C: ProgramDataAnyDesk"-en ezarpenak eta abar dituzten fitxategi batzuk daudela eta fitxategian ad_svc.trace konexioei eta hutsegiteei buruzko gertaerak biltzen dira.

1. Behaketa

Esan bezala, *.anydesk.com blokeatzeak ez zuen programan emaitzarik eman, aztertzea erabaki zen. estres-egoeretan jokabidea programatzea. TCPView Sysinternals-etik eskuan eta joan!

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.

1.1. Ikusten da guretzat interesgarriak diren hainbat prozesu β€œzintzilik” daudela, eta kanpotik helbidearekin komunikatzen dena baino ez zaigu interesatzen. Lotzen dituen atakak mugitzen dira, ikusi dudanetik: 80, 443, 6568. πŸ™‚ 80 eta 443 ezin ditugu blokeatu.

1.2. Bideratzailearen bidez helbidea blokeatu ondoren, beste helbide bat hautatzen da isilean.

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.

1.3. Gure kontsola DENA da! PID zehazten dugu eta orduan zorte pixka bat izan nuen AnyDesk zerbitzuak instalatu zuela, hurrenez hurren, bilatzen nuen PID bakarra da.
1.4. Zerbitzu-zerbitzariaren IP helbidea prozesuaren PIDaren arabera zehazten dugu.

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.

2. Prestaketa

IP helbideak ezagutzeko programak seguruenik nire ordenagailuan bakarrik funtzionatuko duenez, ez dut erosotasunari eta alferkeriari buruzko mugarik, beraz C#.

2.1. Nahi den IP helbidea identifikatzeko metodo guztiak ezagutzen dira dagoeneko, ezartzeko dago.

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ΠΉ элСмСнт Π±Π΅Π· ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ
}

Era berean, konexioa ezarri zuen zerbitzua aurkitzen dugu, linea nagusia bakarrik emango dut

p.StartInfo.Arguments = "/c " netstat  -n -o | findstr /I " + pid1_ + " | findstr "ESTABLISHED""";

Horren emaitza izango da:

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.
Lerrotik, aurreko urratsaren antzera, 3. zutabea ateratzen dugu, eta ":"-ren ondorengo guztia kenduko dugu. Ondorioz, nahi dugun IPa dugu.

2.2. IP blokeatzea Windows-en. Linuxek Blackhole eta iptables baditu, orduan IP helbide bat lerro batean blokeatzeko metodoa, suebakirik erabili gabe, ezohikoa izan zen Windows-en,
Baina zer tresna ziren...

route add наш_Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ_IP_адрСс mask 255.255.255.255 10.113.113.113 if 1 -p

Gako parametroa "1 bada" bidali ibilbidea Loopback-era (erabilgarri dauden interfazeak bistaratu ditzakezu ibilbidearen inprimaketa exekutatuz). Eta GARRANTZITSUA! Orain programa exekutatu behar da administratzaile eskubideekinibilbidea aldatzeak kota eskatzen duelako.

2.3. Identifikatutako IP helbideak bistaratzea eta gordetzea lan hutsala da eta ez du azalpenik behar. Pentsatzen baduzu, fitxategia prozesatu dezakezu ad_svc.trace AnyDesk bera, baina ez nuen berehala pentsatu + agian murrizketa bat dago.

2.4. Programaren portaera desorekatu bitxia zera da: zerbitzu-prozesua "zereginak egiten" direnean Windows 10-n, automatikoki berrabiarazi egiten da, Windows 8-n amaitzen da, kontsola prozesua bakarrik utziz eta berriro konektatu gabe, oro har, logikoa eta zehaztugabea da.

Zerbitzariari konektatu den prozesu bat ezabatzeak hurrengo helbidera berriro konektatzeko aukera ematen du. Aurreko komandoen antzera inplementatzen da, beraz, soilik ematen dut:

p.StartInfo.Arguments = "/c taskkill /PID " + pid1_ + " /F";

Gainera, abiarazi AnyDesk programa.

 //запускаСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ которая располоТСна ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ path_pro
if (File.Exists(path_pro)){ 
Process p1 = Process.Start(path_pro);}

2.5. AnyDesk-en egoera minutuan behin (edo maizago?) egiaztatuko dugu, eta konektatuta badago, alegia. konexioa EZARRITA - blokeatu IP hau, eta berriro berriro - itxaron konektatu arte, blokeatu eta itxaron.

3. Erasoa

Kodea "zirriborroa" izan zen, prozesua bistaratzea erabaki zen "+" zehaztu aurkitutako eta blokeatutako IPa, eta "." - behin eta berriz egiaztatzea AnyDesk-etik konektatu gabe.

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.

β†’ Proiektuaren kodea

Hori dela eta…

Ordenagailu bat sare baten bidez urrutiko kontrolatzeko aplikazio bat blokeatzeko aukeraren azterketa, AnyDesk-en adibidea erabiliz.
Programak Windows OS desberdineko hainbat ordenagailutan funtzionatu zuen, AnyDesk 5 eta 6 bertsioekin. 500 helbide inguru bildu ziren 80 iteraziotan. 2500 - 87 eta abarretarako...

Denborarekin, blokeatutako IP kopurua 100 baino gehiagora iritsi zen.

Finalerako esteka testu fitxategia helbideekin: denbora ΠΈ Π΄Π²Π°

Eginda dago! IP helbide multzo bat gehitzen zaio bideratzaile nagusiaren arauei script baten bidez, eta AnyDesk-ek ezin du kanpoko konexiorik sortu.

Momentu arraro bat dago, hasierako erregistroen arabera, argi dago helbidea informazioaren transferentzian parte hartzen duela boot-01.net.anydesk.com. Noski *.net.anydesk.com ostalari guztiak blokeatu ditugu arau orokor gisa, baina hori ez da bitxikeria. Ordenagailu ezberdinetako ping normal batek domeinu-izen honek IP ezberdin bat ematen du. Linux-en egiaztatzea:

host boot-01.net.anydesk.com

DNSLookup bezala, IP helbide bakarra ematen dute, baina helbide hau aldakorra da. TCPView konexio bat analizatzean, IP helbideen PTR erregistroak berreskuratzen ditugu relay-*.net.anydesk.com.

Teorian: ping-a batzuetan blokeatu gabeko ostalari ezezagun batera joaten baita boot-01.net.anydesk.com ip hauek aurki ditzakegu eta blokeatu, inplementazio hau Linux OS pean ohiko script bat bihurtu, hemen ez duzu AnyDesk instalatu behar. Azterketak erakutsi zuen IP hauek askotan "gurutzatu" gure zerrendan aurkitutakoekin. Agian hau ostalari hau besterik ez da, zeinari programa konektatzen den IP ezagunak "ordenatzen" hasi baino lehen. Seguruenik, geroago ostalarien bilaketen 2. zatiarekin osatuko dut artikulua, nahiz eta momentuz. programak berak ez du orokorrean outer join instalatzen.

Espero dut goiko honetan legez kanpoko ezer ez ikusi izana, eta AnyDesk-en sortzaileek nire ekintzak modu kirolean tratatuko dituzte.

Iturria: www.habr.com

Gehitu iruzkin berria