Birusen analistak eta segurtasun informatikoko ikertzaileak korrika egiten ari dira botnet berrien ahalik eta lagin gehien biltzeko. Honeypot-ak beren helburuetarako erabiltzen dituzte... Baina zer gertatzen da malwarea baldintza errealetan behatu nahi baduzu? Zure zerbitzaria edo bideratzailea arriskuan jarri? Zer gertatzen da gailu egokirik ez badago? Galdera hauek izan ziren bhunter sortzera bultzatu ninduten, botnet nodoetarako sarbidea lortzeko tresna.
erdiko ideia
Modu asko daude malwarea zabaltzeko botnetak zabaltzeko: phishing-etik 0 eguneko ahulguneak ustiatzera arte. Baina metodo ohikoena SSH pasahitzak bortxatzea izaten jarraitzen du.
Ideia oso erraza da. Botnet-en nodoren bat zure zerbitzarirako pasahitzak indar gordinean saiatzen ari bada, ziurrenik nodo hori bera indargabeko pasahitz sinpleek harrapatu zuten. Horrek esan nahi du bertara sartzeko, elkarrekikoa besterik ez duzula behar.
Horrela funtzionatzen du bhunter-ek. 22 ataka entzuten du (SSH zerbitzua) eta bertara konektatzen saiatzen diren saio-hasiera eta pasahitz guztiak biltzen ditu. Ondoren, bildutako pasahitzak erabiliz, erasoko nodoetara konektatzen saiatzen da.
Lanaren algoritmoa
Programa 2 zati nagusitan bana daiteke, hari bereizietan lan egiten dutenak. Lehenengoa honeypot da. Saioa hasteko saiakerak prozesatzen ditu, saio-hasiera eta pasahitz bakarrak biltzen ditu (kasu honetan, saioa hasteko + pasahitz bikotea osotasun bakar gisa hartzen da) eta ilarara konektatzen saiatu diren IP helbideak gehitzen ditu eraso gehiago izateko.
Bigarren zatia da erasoaren erantzule zuzena. Gainera, erasoa bi modutan egiten da: BurstAttack (lehertu erasoa) - indar gordinaren saio-saioa eta zerrenda orokorreko pasahitzak eta SingleShotAttack (tiro bakarreko erasoa) - erasotutako nodoak erabili zituen indar gordinaren pasahitzak, baina oraindik ez direnak. zerrenda orokorrera gehitu da.
Abiarazi eta berehala saio-hasiera eta pasahitzen datu-baseren bat gutxienez edukitzeko, bhunter /etc/bhunter/defaultLoginPairs fitxategiko zerrenda batekin hasieratzen da.
interface
Bhunter abiarazteko hainbat modu daude:
Talde gisa besterik ez
sudo bhunter
Abiarazte honekin, bhunter bere testu-menuaren bidez kontrolatu daiteke: gehitu saio-hasierak eta pasahitzak eraso baterako, esportatu saio-hasiera eta pasahitzen datu-base bat, zehaztu eraso baten helburua. Hackeatutako nodo guztiak /var/log/bhunter/hacked.log fitxategian ikus daitezke
tmux erabiliz
sudo bhunter-ts # ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΏΡΡΠΊΠ° bhunter ΡΠ΅ΡΠ΅Π· tmux
sudo tmux attach -t bhunter # ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΡ ΠΊ ΡΠ΅ΡΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΠΏΡΡΠ΅Π½ bhunter
Tmux terminal multiplexer bat da, oso tresna erosoa. Terminal baten barruan hainbat leiho sortzeko eta leihoak paneletan banatzeko aukera ematen du. Erabiliz, terminaletik irten eta gero saioa hasi dezakezu exekutatzen ari diren prozesuak eten gabe.
bhunter-ts script-ak tmux saio bat sortzen du eta leihoa hiru paneletan banatzen du. Lehenengoak, handiena, testu-menu bat dauka. Goiko eskuinekoak honeypot-en erregistroak ditu, hemen honeypotean saioa hasteko saiakerei buruzko mezuak ikus ditzakezu. Beheko eskuineko panelak botnet-en nodoen erasoaren aurrerapenari eta hack arrakastatsuei buruzko informazioa erakusten du.
Metodo honen abantaila lehenengoaren aldean terminala segurtasunez itxi eta beranduago itzuli dezakegula da, bhunter-ek bere lana gelditu gabe. Tmux-ekin gutxi ezagutzen dutenentzat, gomendatzen dut
Zerbitzu gisa
systemctl enable bhunter
systemctl start bhunter
Kasu honetan, bhunter autostart gaituko dugu sistema abiaraztean. Metodo honetan, bhunter-ekin elkarreragina ez da ematen, eta hackeatutako nodoen zerrenda /var/log/bhunter/hacked.log helbidetik lor daiteke.
eraginkortasuna
Bhunter-en lanean ari nintzela, gailu guztiz desberdinak aurkitzea eta eskuratzea lortu nuen: raspberry pi, bideratzaileak (batez ere mikrotik), web zerbitzariak eta behin meatzaritza baserria (zoritxarrez, sarbidea egunean zehar zegoen, beraz, ez zegoen interesgarririk). istorioa). Hona hemen programaren pantaila-argazkia, hainbat egun lan egin ondoren hackeatutako nodoen zerrenda erakusten duena:
Zoritxarrez, tresna honen eraginkortasuna ez zen nire itxaropenetara iritsi: bhunter-ek nodoen pasahitzak proba ditzake hainbat egunez arrakastarik gabe, eta hainbat helburu pirateatu ditzake ordu pare batean. Baina hau nahikoa da botnet-en lagin berrien sarrera erregularra izateko.
Eraginkortasunean, besteak beste, parametroek eragiten dute: bhunter duen zerbitzaria zein herrialdetan dagoen, hostinga eta IP helbidea esleitzen den barrutia. Nire esperientziaren arabera, kasu bat izan zen ostalari batetik bi zerbitzari birtual alokatu nituenean, eta horietako bat botnetek 2 aldiz gehiago erasotu zuten.
Oraindik konpondu ez ditudan akatsak
Kutsatutako ostalariei erasotzean, egoera batzuetan ezin da pasahitza zuzena den ala ez zehaztu. Horrelako kasuak /var/log/debug.log fitxategian erregistratzen dira.
SSH-rekin lan egiteko erabiltzen den Paramiko moduluak batzuetan gaizki jokatzen du: etengabe itxaroten du ostalariaren erantzuna harekin konektatzen saiatzen denean. Tenporizadoreekin esperimentatu nuen, baina ez nuen lortu nahi den emaitza
Zer gehiago landu behar da?
Zerbitzuaren izena
RFC-4253-ren arabera, bezeroek eta zerbitzariek SSH protokoloa ezartzen duten zerbitzuen izenak trukatzen dituzte instalatu aurretik. Izen hori βZERBITZUAREN IZENAβ eremuan dago, bezeroaren aldetik egindako eskaeran eta zerbitzariaren erantzunean jasota. Eremua kate bat da, eta bere balioa wireshark edo nmap erabiliz aurki daiteke. Hona hemen OpenSSHrako adibide bat:
$ 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
Hala ere, Paramikoren kasuan, eremu honek "Paramiko Python sshd 2.4.2" bezalako kate bat dauka, eta horrek tranpak "saihesteko" diseinatutako botnetak uxatu ditzake. Horregatik, lerro hau neutroago batekin ordezkatzea beharrezkoa dela uste dut.
Beste bektore batzuk
SSH ez da urruneko kudeaketarako bide bakarra. Telnet, rdp ere badago. Merezi du gertutik aztertzea.
luzapena
Oso ona litzateke herrialde ezberdinetan hainbat tranpa edukitzea eta datu-base komun batean saio-hasiera, pasahitzak eta hackeatutako nodoak zentralki biltzea.
Non deskargatu dezaket?
Idazteko unean, proba-bertsio bat baino ez dago prest, bertatik deskargatu daitekeena
Iturria: www.habr.com