Þegar dag einn varpar yfirmaðurinn upp spurningunni: „Af hverju hafa sumir fjaraðgang að vinnutölvu án þess að fá viðbótarleyfi til notkunar?
það er verkefni að "hylja" glufu.

Það eru fullt af forritum fyrir fjarstýringu yfir netið: Chrome fjarstýring, AmmyAdmin, LiteManager, TeamViewer, Anyplace Control, osfrv. Ef Chrome fjarstýring er með opinbera handbók til að berjast gegn aðgangi að þjónustunni, hefur TeamViewer leyfistakmarkanir á tíma eða beiðnir frá netinu og notendur sem „gnanna tennur“ einhvern veginn „skína“ á stjórnendur, þá er uppáhalds margra til einkanota - AnyDesk krefst samt sérstakrar athygli, sérstaklega ef yfirmaðurinn sagði „Nei!“.

Ef þú veist hvað blokkun á netpakka er með innihaldi hans og það hentar þér, þá er restin af efninu
ekki ætlað fyrir þig.
Reynt að fara úr andstæðunni, reyndar það segir hvað ætti að leyfa til að forritið virki, hvort um sig, DNS-skráin var læst *.net.anydesk.com. En AnyDesk er ekki einfalt, það er sama um að loka á lén.
Einu sinni leysti ég vandamálið með að loka á "Anyplace Control" sem kom til okkar með einhverjum vafasömum hugbúnaði, og það var leyst með því að loka á aðeins nokkrar IP-tölur (ég tryggði vírusvörnina). Vandamálið með AnyDesk, eftir að ég safnaði handvirkt meira en tugi IP tölur, ögrað komast í burtu frá hefðbundinni handavinnu.
Einnig kom í ljós að í "C: ProgramDataAnyDesk" er fjöldi skráa með stillingum o.s.frv., og í skránni ad_svc.trace atburðum um tengingar og bilanir er safnað.
1. Athugun
Eins og áður hefur komið fram gaf það engar niðurstöður í forritinu að loka á *.anydesk.com, það var ákveðið að greina forrita hegðun við streituvaldandi aðstæður. TCPView frá Sysinternals í höndunum og farðu!

1.1. Það má sjá að nokkur ferli sem vekur áhuga okkar „hengja“ og aðeins sá sem hefur samskipti við heimilisfangið utan frá vekur áhuga okkar. Gáttirnar sem það tengist eru færðar, miðað við það sem ég sá það: 80, 443, 6568. 🙂 80 og 443 getum við örugglega ekki lokað.
1.2. Eftir að hafa lokað heimilisfanginu í gegnum beininn er annað heimilisfang valið hljóðlega.

1.3. Stjórnborðið okkar er ALLT! Við ákveðum PID og þá varð ég svolítið heppinn að AnyDesk var sett upp af þjónustunni, í sömu röð, PID sem ég var að leita að er sá eini.
1.4. Við ákveðum IP tölu þjónustuþjónsins með PID ferlisins.

2. Undirbúningur
Þar sem forritið til að uppgötva IP tölur mun líklega bara virka á tölvunni minni, hef ég engar takmarkanir á þægindum og leti, svo C#.
2.1. Allar aðferðir til að bera kennsl á viðkomandi IP tölu eru þegar þekktar, það á eftir að útfæra það.
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й элемент без кавычек
}Á sama hátt finnum við þjónustuna sem kom á tengingunni, ég mun aðeins gefa upp aðallínuna
p.StartInfo.Arguments = "/c " netstat -n -o | findstr /I " + pid1_ + " | findstr "ESTABLISHED""";Niðurstaðan verður:
![]()
Úr línunni, svipað og í fyrra skrefi, drögum við út 3. dálkinn og fjarlægjum allt á eftir ":". Fyrir vikið höfum við æskilega IP okkar.
2.2. IP-blokkun í Windows. Ef í Linux Ef þú ert með Blackhole og iptables, þá er til aðferð til að loka fyrir IP-tölur í einni línu, án þess að nota eldvegg, í Windows reyndist óvenjulegt,
En hvaða verkfæri voru...
route add наш_найденный_IP_адрес mask 255.255.255.255 10.113.113.113 if 1 -pLykilbreyta "ef 1" sendu leiðina til Loopback (Þú getur sýnt tiltæk viðmót með því að keyra leiðarprentun ). Og MIKILVÆGT! Nú þarf að keyra forritið með stjórnandaréttindiþví að breyta leiðinni krefst hækkunar.
2.3. Að birta og vista auðkenndar IP tölur er léttvægt verkefni og þarfnast ekki skýringa. Ef þú hugsar um það geturðu unnið úr skránni ad_svc.trace AnyDesk sjálft, en ég hugsaði ekki strax um það + kannski er takmörkun á því.
2.4. Það sem er óeðlilegt við ójafna hegðun forritsins er að þegar þú „takkkillar“ þjónustuferlið í Windows 10 það endurræsist sjálfkrafa, í Windows 8 endar, og skilur aðeins stjórnborðsferlið eftir án þess að tengjast aftur, almennt er það órökrétt og þetta er ónákvæmt.
Að eyða ferli sem hefur tengst þjóninum gerir þér kleift að "þvinga" endurtengingu á næsta heimilisfang. Það er útfært á svipaðan hátt og fyrri skipanir, svo ég gef aðeins:
p.StartInfo.Arguments = "/c taskkill /PID " + pid1_ + " /F";Að auki skaltu ræsa AnyDesk forritið.
//запускаем программу которая расположена по пути path_pro
if (File.Exists(path_pro)){
Process p1 = Process.Start(path_pro);}2.5. Við munum athuga stöðu AnyDesk einu sinni á mínútu (eða oftar?), og ef það er tengt, þ.e. tenging komið á fót - lokaðu þessari IP, og aftur allt aftur - bíddu þar til hún tengist, lokaðu og bíddu.
3. Árás
Kóðinn var „saminn“, ákveðið var að sjá ferlið „+" tilgreindu fundið og læst IP, og "." - endurtekin athugun án árangursríkrar tengingar frá AnyDesk.

→
Þar af leiðandi…

Forritið virkaði á nokkrum tölvum með mismunandi Windows Stýrikerfi, með AnyDesk útgáfum 5 og 6. Eftir 500 ítrekanir voru um 80 vistföng safnað. Eftir 2500, 87, og svo framvegis...
Með tímanum náði fjöldi lokaðra IP-tölva 100+.
Tengill á úrslitaleikinn textaskrá með heimilisföngum: и
Það er búið! Fjöldi IP-talna er bætt við reglur aðalbeins í gegnum skriftu og AnyDesk getur einfaldlega ekki búið til ytri tengingu.
Það er undarlegt augnablik, samkvæmt fyrstu logs, er ljóst að heimilisfangið á þátt í flutningi upplýsinga boot-01.net.anydesk.comVið höfum lokað á alla *.net.anydesk.com þjóna að jafnaði, en það er ekki það sem er skrýtið. Í hvert skipti sem við pingum þetta lénsheiti frá mismunandi tölvum skilar það mismunandi IP tölu. Innskráning Linux:
host boot-01.net.anydesk.com
eins og DNSLookup gefa þeir aðeins upp eina IP tölu, en þetta heimilisfang er breytilegt. Þegar TCPView tenging er þáttuð fáum við til baka PTR skrár yfir IP tölur eins og relay-*.net.anydesk.com.
Fræðilega séð: þar sem pingið fer stundum á óþekktan opið hýsil boot-01.net.anydesk.com Við getum fundið þessar IP-tölur og lokað fyrir þær. Þetta er hægt að framkvæma með venjulegu forskrift undir stýrikerfinu. Linux, það er engin þörf á að setja upp AnyDesk hér. Greining sýndi að þessar IP-tölur eru oftskerast" með þeim sem fundust af listanum okkar. Kannski er þetta bara þessi gestgjafi, sem forritið tengist áður en það byrjar að "flokka út" þekktar IP-tölur. Sennilega síðar mun ég bæta við greinina með 2. hluta hýsingarleitar, þó að í augnablikinu forritið sjálft setur ekki upp ytri join almennt.
Ég vona að þú hafir ekki séð neitt ólöglegt í ofangreindu, og höfundar AnyDesk munu koma fram við gjörðir mínar á sportlegan hátt.
Heimild: www.habr.com
