Script Bash: võrrelge kõigi võrgus olevate arvutite MAC-i konkreetse arvutiga

Siinkohal räägin bash-skriptist, mille koostasin väga konkreetsel eesmärgil ja milles ma kahtlen, kas teistel selline olukord on, aga kuna ma selle programmeerisin ... ei maksa selle jagamine mulle midagi 🙂

Mis see üleval on?

See juhtub, et minu linnas on üsna suur võrk, paljud meist ühendavad juhtmega (võrgukaabel lülitiga, ühendatud teisega ja paljud lülitid hehe), kuid suured lingid (mida ei saa kaabli kaudu) tehke WiFi-seadmetega, nii on teil mitme tuhande kasutajaga võrk, et kuigi pole postiteenust ja palju vähem internetti, mängite siiski WoW-d (teiste hulgas), õpite, jagate teavet jne.

Fakt on see, et teatud WiFi-seadmed on keelatud või välja lülitatud võrgust, kas sellepärast, et nende omanik rikub võrgureegleid või mida iganes. Niisiis, iga kord tuleb skannida, et kontrollida, kas keegi on väljalastud arvuti MAC-i uuesti ühendanud, ja see on see skript.

Lihtsamalt öeldes, mida skript teeb?

  1. Kõigepealt skannib see alamvõrgus, kus see töötab, ja tuvastab otsehostid (aktiivsed IP-d)
  2. Seejärel kontrollige, kas mõni neist IP-dest on Ubiquiti (linkide jaoks kasutatav varustus). See tuvastab tegelikult ainult selle, kas port 443 on avatud kõigil ülaltoodud IP-del.
  3. See võtab iga aktiivse seadme MAC-i ja pordi 443 avatuna, samal ajal võrreldakse iga eraldatud MAC-i otsituga.
  4. Juhul kui ta leiab vaste, genereerib see aruande.

Tule koodi juurde!

Kehtib selgitamaks, et selle tööks on vaja installida järgmisi pakette: nmap… nc ... arping

Nm, nmap-iga teeb see kaardistamise aktiivsete IP-de tuvastamiseks, nc-ga kontrollib siis, millisel on port 443 avatud, ja lõpuks arpides eraldab see MAC-i.

Jah, ma tean, et nmap-iga saate seda kõike teha, kuid selleks kulus mitu sekundit (või minuteid rohkem), ma eelistasin ühe tööriista asemel kasutada mitut tööriista, et kõik toimiks kiiremini.

Jah nüüd…. kood!

#! / bin / bash # # Nõuab pakettide installimist: # nmap, arping, nc # # Autor: KZKG ^ Gaara clear # Muutujate deklareerimine DATE = "kuupäev + '% Y-% m-% d_% H-% M "INTERFACE =" wlo1 "WANTEDMAC =" C8: CB: B8: B1: DA: E6 "YOURIP =" ifconfig | grep "192.168" | awk '{print $ 2}' 'YOURZONE = `kaja $ YOURIP | awk -F "." '{print $ 3}' '# Elusate hostide tõmbamine võrgus (teie IP) nmap -sn 192.168. $ YOURZONE.0 / 24 | grep "aruanne" | awk '{print $ 5}'> hosts-ip # Kui näete, millised neist hostidest võivad olla Nano, siis laske porti 443 avada rm hosts-nanos &> / dev / null TMPVAR-i jaoks kataloogis "cat hosts-ip" do nc -zv -w 2 $ TMPVAR 443 &> / dev / null kui [$? -ne 1]; siis kaja "$ TMPVAR" >> hosts-nanos fi valmis # MAC-i eemaldamine võrgus Nanos rm hosts-mac &> / dev / null TMPVAR-i jaoks rakenduses `cat hosts-nanos` teevad arping -I $ INTERFACE -f $ TMPVAR | grep "vastuse saaja" | awk '{print $ 5}' | lõika -d '[' -f2 | cut -d ']' -f1 >> hosts-mac done # Eemaldatud MAC-ide võrdlemine otsitud MAC-iga kataloogis `cat hosts-mac` do, kui [" $ MAC "=" $ WANTEDMAC "]; siis MACLINE = `kass hosts-mac | grep -n $ MAC | cut -d ':' -f1` IPMAC = `kassi peremehed-nanod | sed $ MACLINE'q; d'` echo -e "\ n \ t ALERT, tuvastatud varastatud seadme MAC: $ ​​MAC ... IP-ga: $ IPMAC" echo -e "\ t ... Aruande loomine ... SpyMaci loodud aruanne "echo -e" \ n "> final_report_ $ YOURZONE.info echo -e" Aruande hetk: $ DATE \ n ">> final_report_ $ YOURZONE.info echo -e" Tuvastatud varastatud seadme MAC: $ ​​WANTEDMAC \ n ">> final_report_ $ YOURZONE.info echo -e" Selles arvutis praegu kasutatav IP: $ IPMAC \ n ">> final_report_ $ YOURZONE.info echo -e" Aruanne on loodud: $ YOURIP \ n ">> final_report_ $ YOURZONE .info on teinud väljumise

Kui vaste leitakse, näitab see meile leitud MAC-i ja ka selle seadme IP-d.

Sellel (ikka) on lünki hehe

server

Ma tean, et on asju, mida parandada, näiteks MAC-e saab võltsida, MAC-i saab muuta arvutiks ja see on kõik, ma otsin ikka veel, kuidas näha tegelikku MAC-i, mitte valet, kui see on juhtum.

Samuti lisades veel ühe tsükli jaoks, saan korraga võrrelda mitut MAC-i ja mitte võrrelda / otsida ainult konkreetset, st otsida loendis olevaid MAC-sid, 5, 10, mis iganes nad on . See on midagi, mida ma veel tegema pean.

Võib-olla on see Nano, kuid sellel on port 443 blokeeritud, ma tean, kuidas saaksin täieliku turvalisusega teada saada, kas see on Ubiquiti seade või mitte, see tähendab, et curl (või wget) ühe Ubiquiti puhul on see turvalisem meetod kui pordiga 443. See on veel üks detail, mida tulevastes versioonides lisada.

Samuti tahaksin (mis on minu jaoks keeruline) genereerida väike skript või isegi APK, et see tööriist oleks minu Androidis. Ma tean, et ma ei saa seda sisse panna Mängi Store aga…. bueh, see pole nii, et ma tahaksin 😀

Ah, iPhone'i kasutajad ... isegi kui saaksin (teadmiste ja aja huvides), kas ma selle tööriista iOS-i portiksin ... JUAZ JUAZ JUAZ ... vaadake oma App Store Vaatame, kas neil on juhuslikult midagi sarnast, milles ma kahtlen 😀

lõpp

Hea on kõik. Kordan, et arvan, et konkreetne skript ei pruugi paljudele kasulik olla (see on mõeldud üsna konkreetseks olukorraks), kuid võib-olla on osa koodi jah, loodetavasti ja nii


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.

  1.   inglitera DIJO

    Nmap-i abil saate MAC-AADRESSI ilma, et peaksite seda ips-i kaardistamist tegema

    variant on -PR

    midagi sellist
    sudo nmap -sn IpAddress / netmask -PR | grep MAC | awk '{print $ 3}

    1.    eliotime3000 DIJO

      Hea näpunäide, kuigi see nõuab tingimata juuri.

  2.   Dario DIJO

    bash on üldiselt üsna loetamatu, kui te pole seda ise teinud. kuid teie koodid on arusaadavad xD

    Teine asi, mida saate teha, on lihtne ping erinevatele IP-dele, siis vaatate arp-tabeleid käsuga arp -a (mõnel juhul peate installima võrgutööriistad) ja pingitud mac-aadressid arvan, et see on kõige kiirem lahendus.

  3.   Dario DIJO

    või veel parem
    echo "test"> /dev/tcp/www.google.com/80
    kui see annab vea, on port (80) suletud

  4.   Mario DIJO

    Tere, kas saaksite rakendada SNMP-d, et oleks võimalik tuvastada selliseid probleeme nagu mis tüüpi seadmed need on, mis marki, millised võimalused sellel on, see võib olla ka vastus muudetud või virtuaalse MAC-i juhtumile; saate isegi "hallata", kui konf. snmp-teenus on nõrk. Lihtsalt arvamus, avades oma stsenaariumi võimaluste ringi. Väga hea ajaveeb, mul on hea meel, et need leidsin, loen neid tihti! kallista.

  5.   Frank Aleksander DIJO

    See bash-skript on tohutult inspireeriv.

  6.   tulekolde DIJO

    Stsenaarium on väga arusaadav ja väga hea, aitäh, see andis mulle häid ideid, Tervitused

  7.   pegasusonline DIJO

    Tore oleks, kui paneksite selle GITHUBi, nii et me kõik teeksime seal koostööd.

    Aitäh jagamast!
    seoses

  8.   Luciano Lagassa DIJO

    Tere, teie bashi skript on väga hea. Omalt poolt soovitan turvalisuse parandamiseks rakendada autentimismeetodit, näiteks tarkvarasid, et vältida volitamata või väljasaadetud kasutajate sisenemist. seal on palju tarkvara, mida nad saavad kasutada.

  9.   dhunter DIJO

    Maci võltsimisel saadate võltsitud maket pakettidena (2. kihi OSI), kui te ründaja võrgukaarti lähtestate, ei saa te seda tõelist üles leida.

  10.   Aleksander seijas DIJO

    Mind huvitab teie skript ... noh, ma olen otsinud natuke keerukamat või võib-olla lihtsamat.

    asi on selles, et mul on suur 250 masinaga võrk ja seal on WiFi-punkte, kuid nad ostavad sama maatüki ...

    Saate teada, kuidas ma saaksin Maci võrrelda ip-ga ja et see tuleks varem deklareerida, nii et kui mõni naljakas inimene muudab ip-d, siis andke hoiatus, et ip ja mac ei sobi.

    Loodan, et olen ennast selgitanud ...

    Kuigi olen otsinud kõikjalt, ei leia ma selle kohta midagi ....

  11.   Hotmaili DIJO

    Täname skripti jagamise eest, pean selles mõned muudatused tegema, kuid põhimõtteliselt on see ka see, mida ma otsisin, ja jälle hinnatud. Terviseks

  12.   Isidore DIJO

    Just see, mida ma otsisin, sest mul on vaja oma vaarikat, et tuvastada, kui mu telefon ühendub wifi-ga, et veel üks bash käivitada.
    tänan väga