Veirusérfræðingar og tölvuöryggisfræðingar keppast við að safna eins mörgum sýnum af nýjum botnetum og mögulegt er. Þeir nota hunangspotta í eigin tilgangi... En hvað ef þú vilt fylgjast með spilliforritinu við raunverulegar aðstæður? Setja netþjóninn þinn eða leið í hættu? Hvað ef ekkert viðeigandi tæki er til? Það voru þessar spurningar sem fengu mig til að búa til bhunter, tæki til að fá aðgang að botnet hnútum.

Helstu hugmyndin
Það eru margar leiðir til að dreifa spilliforritum til að stækka botnet: allt frá vefveiðum til að nýta 0 daga veikleika. En algengasta aðferðin er samt að þvinga SSH lykilorð.
Hugmyndin er mjög einföld. Ef einhver botnet hnútur er að reyna að knýja fram lykilorð fyrir netþjóninn þinn, þá er líklegast að þessi hnútur sjálfur hafi verið tekinn með einföldum lykilorðum sem þvingað eru. Þetta þýðir að til að fá aðgang að því þarftu bara að endurgjalda.
Þetta er nákvæmlega hvernig bhunter virkar. Hlustar á port 22 (SSH þjónusta) og safnar öllum innskráningum og lykilorðum sem þeir reyna að tengjast henni með. Síðan, með því að nota safnað lykilorð, reynir það að tengjast árásarhnútum.
Reiknirit vinnu
Hægt er að skipta dagskránni í 2 meginhluta sem vinna í aðskildum þráðum. Sá fyrsti er hunangspottur. Vinnur innskráningartilraunir, safnar einstökum innskráningum og lykilorðum (í þessu tilfelli er innskráning + lykilorð parið talið sem eina heild) og bætir einnig við IP tölum sem reyndu að tengjast biðröðinni fyrir frekari árás.
Annar hlutinn ber beina ábyrgð á árásinni. Þar að auki er árásin gerð í tveimur stillingum: BurstAttack (sprungaárás) - innskráningar og lykilorð fyrir brute force af almennum lista og SingleShotAttack (eins skotárás) - brute force lykilorð sem voru notuð af árásarhnútnum, en hafa ekki enn verið bætt við almennan lista.
Til þess að hafa að minnsta kosti einhvern gagnagrunn yfir innskráningar og lykilorð strax eftir ræsingu er bhunter frumstillt með lista úr skránni /etc/bhunter/defaultLoginPairs.
tengi
Það eru nokkrar leiðir til að ræsa bhunter:
Bara sem lið
sudo bhunterMeð þessari ræsingu er hægt að stjórna bhunter í gegnum textavalmynd þess: bæta við innskráningum og lykilorðum fyrir árás, flytja út gagnagrunn með innskráningum og lykilorðum, tilgreina markmið fyrir árás. Allir hakkaðir hnútar má sjá í skránni /var/log/bhunter/hacked.log
Notar tmux
sudo bhunter-ts # команда запуска bhunter через tmux
sudo tmux attach -t bhunter # подключаемся к сессии, в которой запущен bhunter
Tmux er terminal multiplexer, mjög þægilegt tól. Gerir þér kleift að búa til nokkra glugga innan einnar flugstöðvar og skipta þeim í spjöld. Með því að nota það geturðu farið úr flugstöðinni og síðan skráð þig inn án þess að trufla hlaupandi ferli.
Bhunter-ts handritið býr til tmux lotu og skiptir glugganum í þrjú spjöld. Sá fyrsti, stærsti, inniheldur textavalmynd. Efst til hægri eru honeypot logs, hér má sjá skilaboð um tilraunir til að skrá sig inn í honeypot. Neðra hægra spjaldið sýnir upplýsingar um framvindu árásarinnar á botnet hnúta og um árangursríkar innbrot.
Kosturinn við þessa aðferð umfram þá fyrstu er að við getum örugglega lokað flugstöðinni og snúið aftur til hennar síðar, án þess að bhunter stöðvi vinnu sína. Fyrir þá sem þekkja lítið til tmux mæli ég með .
Sem þjónusta
systemctl enable bhunter
systemctl start bhunterÍ þessu tilfelli virkjum við sjálfvirka ræsingu bhunter við ræsingu kerfisins. Í þessari aðferð er ekki boðið upp á samskipti við bhunter og listann yfir tölvusnápur er hægt að nálgast á /var/log/bhunter/hacked.log
Skilvirkni
Meðan ég var að vinna á bhunter tókst mér að finna og fá aðgang að gjörólíkum tækjum: raspberry pi, beinum (sérstaklega mikrotik), vefþjónum og einu sinni námubú (því miður var aðgangur að því á daginn, svo það var ekkert áhugavert saga). Hér er skjáskot af forritinu, sem sýnir lista yfir tölvusnápur eftir nokkurra daga vinnu:

Því miður náði virkni þessa tóls ekki væntingum mínum: bhunter getur prófað lykilorð að hnútum í nokkra daga án árangurs og getur hakkað nokkur skotmörk á nokkrum klukkustundum. En þetta er nóg fyrir reglulega innstreymi nýrra botnet sýnishorna.
Skilvirknin er undir áhrifum af breytum eins og: landinu þar sem þjónninn með bhunter er staðsettur, hýsingu og bilinu sem IP tölunni er úthlutað frá. Mín reynsla er sú að það var tilfelli þegar ég leigði tvo sýndarþjóna frá einum hýsingaraðila og einn þeirra varð fyrir árásum af botnetum 2 sinnum oftar.
Villur sem ég hef ekki lagað ennþá
Þegar ráðist er á sýkta véla er í sumum tilfellum ekki hægt að ákvarða ótvírætt hvort lykilorðið sé rétt eða ekki. Slík tilvik eru skráð í /var/log/debug.log skrána.
Paramiko einingin, sem er notuð til að vinna með SSH, hegðar sér stundum rangt: hún bíður endalaust eftir svari frá gestgjafanum þegar hann reynir að tengjast honum. Ég gerði tilraunir með tímamæla, en náði ekki tilætluðum árangri
Hvað þarf annað að vinna í?
Þjónustunafn
Samkvæmt RFC-4253 skiptast biðlarinn og þjónninn á nöfnum þjónustu sem innleiða SSH samskiptareglur fyrir uppsetningu. Þetta nafn er að finna í reitnum „ÞJÓNUSTUNAFN“, sem er bæði í beiðninni frá viðskiptavininum og í svarinu frá miðlaranum. Reiturinn er strengur og hægt er að finna gildi hans með wireshark eða nmap. Hér er dæmi fyrir OpenSSH:
$ nmap -p 22 ***.**.***.** -sV
Starting Nmap ...
PORT STATE SERVICE VERSION
22/tcp open ssh <b>OpenSSH 7.9p1 Debian 10+deb10u2</b> (protocol 2.0)
Nmap done: 1 IP address (1 host up) scanned in 0.47 seconds
Hins vegar, þegar um Paramiko er að ræða, þá inniheldur þessi reitur streng eins og „Paramiko Python sshd 2.4.2“, sem getur fælt frá botnetum sem eru hönnuð til að „forðast“ gildrur. Þess vegna tel ég nauðsynlegt að skipta þessari línu út fyrir eitthvað hlutlausara.
Aðrir vektorar
SSH er ekki eina leiðin til fjarstýringar. Það er líka telnet, rdp. Það er þess virði að skoða þær nánar.
framlenging
Það væri frábært að hafa nokkrar gildrur í mismunandi löndum og safna innskráningum, lykilorðum og innbrotnum hnútum miðlægt úr þeim í sameiginlegan gagnagrunn
Hvar get ég sótt?
Þegar þetta er skrifað er aðeins tilbúin prufuútgáfa sem hægt er að hlaða niður frá .
Heimild: www.habr.com
