Bhunter ā€” robottÄ«klu mezglu uzlauÅ”ana

VÄ«rusu analÄ«tiÄ·i un datoru droŔības pētnieki sacenÅ”as, lai savāktu pēc iespējas vairāk jaunu robottÄ«klu paraugu. Viņi izmanto meduspodus saviem mērÄ·iem... Bet ko darÄ«t, ja vēlaties novērot ļaunprogrammatÅ«ru reālos apstākļos? Vai apdraudēt savu serveri vai marÅ”rutētāju? Ko darÄ«t, ja nav piemērotas ierÄ«ces? TieÅ”i Å”ie jautājumi mani pamudināja izveidot bhunter ā€” rÄ«ku, lai piekļūtu robottÄ«kla mezgliem.

Bhunter ā€” robottÄ«klu mezglu uzlauÅ”ana

galvenā doma

Ir daudzi veidi, kā izplatÄ«t ļaunprātÄ«gu programmatÅ«ru, lai paplaÅ”inātu robottÄ«klus: no pikŔķerÄ“Å”anas lÄ«dz 0 dienu ievainojamÄ«bu izmantoÅ”anai. Taču visizplatÄ«tākā metode joprojām ir rupja SSH paroļu piespieÅ”ana.

Ideja ir ļoti vienkārÅ”a. Ja kāds robottÄ«kla mezgls mēģina piespiest jÅ«su servera paroles, visticamāk, Å”is mezgls tika tverts ar vienkārŔām paroles, kas tiek piespiestas. Tas nozÄ«mē, ka, lai tai piekļūtu, jums vienkārÅ”i ir jāatdod savstarpēja atbilde.

TieÅ”i tā darbojas bhunter. Klausās portu 22 (SSH pakalpojums) un apkopo visus pieteikumvārdus un paroles, ar kurām viņi mēģina izveidot savienojumu ar to. Pēc tam, izmantojot savāktās paroles, tas mēģina izveidot savienojumu ar uzbrukuma mezgliem.

Darba algoritms

Programmu var iedalÄ«t 2 galvenajās daļās, kas darbojas atseviŔķos pavedienos. Pirmais ir medus pods. Apstrādā pieteikÅ”anās mēģinājumus, apkopo unikālus pieteikumvārdus un paroles (Å”ajā gadÄ«jumā pieteikÅ”anās + paroles pāris tiek uzskatÄ«ts par vienu veselumu), kā arÄ« pievieno IP adreses, kas mēģināja izveidot savienojumu ar rindu turpmākam uzbrukumam.

Otrā daļa ir tieÅ”i atbildÄ«ga par uzbrukumu. Turklāt uzbrukums tiek veikts divos režīmos: BurstAttack (pārraidÄ«Å”anas uzbrukums) - brutāla spēka pieteikumi un paroles no vispārējā saraksta un SingleShotAttack (viena Ŕāviena uzbrukums) - brutāla spēka paroles, kuras izmantoja uzbrukuÅ”ais mezgls, bet vēl nav izmantotas. pievienots vispārējam sarakstam.

Lai tÅ«lÄ«t pēc palaiÅ”anas bÅ«tu vismaz daļa pieteikumvārdu un paroļu datubāzes, bhunter tiek inicializēts ar sarakstu no faila /etc/bhunter/defaultLoginPairs.

interfeiss

Ir vairāki veidi, kā palaist bhunter:

Gluži kā komanda

sudo bhunter

Ar Å”o palaiÅ”anu ir iespējams kontrolēt bhunter, izmantojot tā teksta izvēlni: pievienot pieteikumvārdus un paroles uzbrukumam, eksportēt pieteikumvārdu un paroļu datu bāzi, norādÄ«t uzbrukuma mērÄ·i. Visus uzlauztos mezglus var redzēt failā /var/log/bhunter/hacked.log

Izmantojot tmux

sudo bhunter-ts # ŠŗŠ¾Š¼Š°Š½Š“Š° Š·Š°ŠæусŠŗŠ° bhunter чŠµŃ€ŠµŠ· tmux  
sudo tmux attach -t bhunter # ŠæŠ¾Š“ŠŗŠ»ŃŽŃ‡Š°ŠµŠ¼ŃŃ Šŗ сŠµŃŃŠøŠø, Š² ŠŗŠ¾Ń‚Š¾Ń€Š¾Š¹ Š·Š°ŠæущŠµŠ½ bhunter

Tmux ir termināla multiplekseris, ļoti ērts rÄ«ks. Ä»auj vienā terminālÄ« izveidot vairākus logus un sadalÄ«t logus paneļos. Izmantojot to, varat iziet no termināļa un pēc tam pieteikties, nepārtraucot darbojoÅ”os procesus.

Bhunter-ts skripts izveido tmux sesiju un sadala logu trÄ«s paneļos. Pirmajā, lielākajā, ir teksta izvēlne. AugŔējā labajā pusē ir meduspoda žurnāli, Å”eit var redzēt ziņojumus par mēģinājumiem pieteikties medus podā. ApakŔējā labajā panelÄ« tiek parādÄ«ta informācija par uzbrukuma gaitu robottÄ«kla mezgliem un par veiksmÄ«giem uzlauÅ”anas gadÄ«jumiem.

Å Ä«s metodes priekÅ”rocÄ«ba salÄ«dzinājumā ar pirmo ir tāda, ka mēs varam droÅ”i aizvērt termināli un atgriezties pie tā vēlāk, neapturot tā darbÄ«bu. Tiem, kuri ir maz pazÄ«stami ar tmux, iesaku Ŕī krāpÅ”anās lapa.

Kā pakalpojums

systemctl enable bhunter
systemctl start bhunter

Å ajā gadÄ«jumā mēs iespējojam bhunter automātisko palaiÅ”anu sistēmas startÄ“Å”anas laikā. Å ajā metodē mijiedarbÄ«ba ar bhunter netiek nodroÅ”ināta, un uzlauzto mezglu sarakstu var iegÅ«t no /var/log/bhunter/hacked.log

Efektivitāte

Strādājot pie bhunter, man izdevās atrast un piekļūt pilnÄ«gi dažādām ierÄ«cēm: raspberry pi, marÅ”rutētājiem (Ä«paÅ”i mikrotik), tÄ«mekļa serveriem un kādreiz kalnrÅ«pniecÄ«bas fermai (diemžēl piekļuve tai bija dienas laikā, tāpēc nebija nekā interesanta stāsts). Å eit ir programmas ekrānuzņēmums, kurā parādÄ«ts uzlauzto mezglu saraksts pēc vairāku dienu darba:

Bhunter ā€” robottÄ«klu mezglu uzlauÅ”ana

Diemžēl Ŕī rÄ«ka efektivitāte nesasniedza manas cerÄ«bas: bhunter var vairākas dienas bez panākumiem izmēģināt mezglu paroles un pāris stundu laikā var uzlauzt vairākus mērÄ·us. Bet ar to pietiek, lai regulāri ieplÅ«stu jaunu robottÄ«klu paraugi.

Efektivitāti ietekmē tādi parametri kā: valsts, kurā atrodas serveris ar bhunter, hostings un diapazons, no kura tiek pieŔķirta IP adrese. Pēc manas pieredzes ir bijis gadÄ«jums, kad no viena hostera Ä«rēju divus virtuālos serverus, un vienam no tiem botneti uzbruka 2 reizes biežāk.

Kļūdas, kuras vēl neesmu izlabojis

Uzbrūkot inficētiem saimniekiem, dažās situācijās nav iespējams viennozīmīgi noteikt, vai parole ir pareiza vai nē. Šādi gadījumi tiek reģistrēti /var/log/debug.log failā.

Paramiko modulis, kas tiek izmantots darbam ar SSH, dažreiz darbojas nepareizi: tas bezgalīgi gaida atbildi no resursdatora, kad tas mēģina izveidot savienojumu ar to. Eksperimentēju ar taimeriem, bet nesaņēmu vēlamo rezultātu

Pie kā vēl jāpiestrādā?

Pakalpojuma nosaukums

Saskaņā ar RFC-4253 klients un serveris pirms instalÄ“Å”anas apmainās ar to pakalpojumu nosaukumiem, kuri ievieÅ” SSH protokolu. Å is nosaukums ir ietverts laukā ā€œSERVISS NOSAUKUMSā€, kas ietverts gan pieprasÄ«jumā no klienta puses, gan atbildē no servera puses. Lauks ir virkne, un tā vērtÄ«bu var atrast, izmantojot wireshark vai nmap. Å eit ir OpenSSH piemērs:

$ 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

Tomēr Paramiko gadÄ«jumā Å”ajā laukā ir virkne, piemēram, ā€œParamiko Python sshd 2.4.2ā€, kas var atbaidÄ«t robottÄ«klus, kas ir paredzēti, lai ā€œizvairās no slazdiemā€. Tāpēc es domāju, ka ir nepiecieÅ”ams aizstāt Å”o lÄ«niju ar kaut ko neitrālāku.

Citi vektori

SSH nav vienīgais attālās pārvaldības līdzeklis. Ir arī telnet, rdp. Ir vērts tos aplūkot tuvāk.

pagarināŔana

Būtu lieliski, ja dažādās valstīs būtu vairāki slazdi un centralizēti apkopotu no tiem pieteikumvārdus, paroles un uzlauztos mezglus kopējā datu bāzē.

Kur es varu lejupielādēt?

RakstÄ«Å”anas brÄ«dÄ« ir gatava tikai testa versija, kuru var lejupielādēt no krātuve vietnē Github.

Avots: www.habr.com

Pievieno komentāru