abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:22 | Nová verze

    Byla vydána nová stabilní verze 7.8 dnes již jedenáctiletého webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 144. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 2
    dnes 10:33 | Nová verze

    GNU gettext (Wikipedie), tj. sada nástrojů pro psaní vícejazyčných programů, dospěl do verze 1.0. Po více než 30 letech vývoje. Přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 1
    dnes 05:11 | IT novinky

    Chris Kühl (CEO), Christian Brauner (CTO) a Lennart Poettering (Chief Engineer) představili svou společnost Amutable. Má přinést determinismus a ověřitelnou integritu do linuxových systémů.

    Ladislav Hagara | Komentářů: 12
    včera 20:11 | Nová verze

    Byla vydána (𝕏) nová verze 26.1 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.1 je Witty Woodpecker. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 2
    včera 15:11 | Zajímavý projekt

    Deník TO spustil vlastní zpravodajský webový portál ToHledej.CZ s internetovým vyhledávačem a bezplatnou e-mailovou schránkou. Dle svého tvrzení nabízí 'Zprávy, komentáře, analýzy bez cenzury' a 'Mail bez šmírování a Velkého bratra'. Rozložením a vizuálním stylem se stránky nápadně podobají portálu Seznam.cz a nejspíše je cílem být jeho alternativou. Z podmínek platformy vyplývá, že portál využívá nespecifikovaný internetový vyhledávač třetí strany.

    NUKE GAZA! 🎆 | Komentářů: 27
    včera 14:11 | Zajímavý projekt

    Computer History Museum (Muzeum historie počítačů) zpřístupnilo své sbírky veřejnosti formou online katalogu. Virtuálně si tak můžeme prohlédnout 'rozsáhlou sbírku archivních materiálů, předmětů a historek a seznámit se s vizionáři, inovacemi a neznámými příběhy, které revolučním způsobem změnily náš digitální svět'.

    NUKE GAZA! 🎆 | Komentářů: 10
    včera 14:00 | Zajímavý projekt

    Ruský hacker VIK-on si sestavil vlastní 32GB DDR5 RAM modul z čipů získaných z notebookových 16GB SO-DIMM RAM pamětí. Modul běží na 6400 MT/s a celkové náklady byly přibližně 218 dolarů, což je zhruba třetina současné tržní ceny modulů srovnatelných parametrů.

    NUKE GAZA! 🎆 | Komentářů: 15
    včera 11:00 | Upozornění

    Národní identitní autorita (NIA), která ovlivňuje přihlašování prostřednictvím NIA ID, MEP, eOP a externích identit (např. BankID), je částečně nedostupná.

    Ladislav Hagara | Komentářů: 9
    včera 02:44 | Nová verze

    Byla vydána nová verze 1.16.0 klienta a serveru VNC (Virtual Network Computing) s názvem TigerVNC (Wikipedie). Z novinek lze vypíchnout nový server w0vncserver pro sdílení Wayland desktopu. Zdrojové kódy jsou k dispozici na GitHubu. Binárky na SourceForge. TigerVNC je fork TightVNC.

    Ladislav Hagara | Komentářů: 0
    27.1. 14:44 | Nová verze

    Byla vydána nová verze 4.6 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (10%)
     (24%)
     (3%)
     (5%)
     (2%)
     (12%)
     (33%)
    Celkem 663 hlasů
     Komentářů: 19, poslední včera 13:03
    Rozcestník

    Ochrana proti SSH útoku: pam_abl

    6.6.2005 18:11 | Přečteno: 3305× | poslední úprava: 6.6.2005 20:07

    sshd, démonečku,
    otevři nám svou světničku,
    jen dva prstíčky tam strčíme,
    jen co se ohřejeme,
    local exploit hned průbneme.

    Polořešení a jiné obezličky

    Taky po vás jdou? Už jste vyzkoušeli všechny zaručené recepty:

    Limit na počet TCP spojení
    Jelen muže domů jen na oběd a na večeři
    Nestandardní port
    Jelen poleze domů komínem
    Port knocking
    Jelen se stane zručným bubeníkem, aby zvládl ťukací sekvenci
    pam_tally
    Pokud se bude jeskyňka vydávat za jelena, jelen dnes spát doma nebude
    Pársování logů
    Rozumné řešení, ale to bych nemusel psát tenhle článek a opěvovat modularitu PAM systému

    pam_abl

    Jedná se o PAM modul, jehož autorem je Andy Armstrong a domovskou stránku má na http://hexten.net/sw/pam_abl/index.mhtml. Název je zkratkou z PAM Active Blocking List.

    Modul si udržuje seznam chybných pokusů o přihlášení v Berkeley DB, a to zvlášť pro uživatele a zvlášť pro IP adresy (resp. PAM_RHOST). Pokud počet pokusů přesáhne stanovenou mez, je po určitou dobu útočníkovi vždy vrácena chyba autentizace. Útočník tak nezjistí, že byl odhalen a bezúčelně plýtvá svými prostředky.

    Konfigurace

    Do /etc/pam.d/sshd si přidejte do sekce auth modul pam_abl:

    auth    required    /lib/security/pam_abl.so config=/etc/security/pam_abl.conf
    auth    sufficient  /lib/security/pam_unix.so likeauth nullok
    auth    required    /lib/security/pam_deny.so
    

    a do souboru /etc/security/pam_abl.conf zapište vlastní nastavení pam_abl modulu:

    host_db=/var/lib/abl/hosts.db
    host_purge=2d
    host_rule=*:10/1h,30/1d
    
    user_db=/var/lib/abl/users.db
    user_purge=2d
    user_rule=!root:10/1h,30/1d
    

    host_db definuje soubor obsahující databázi chybných pokusů podle IP (user_db obdobně pro uživatele), {host|user}_purge je doba, po kterou se uchovávají informace v databázi (je nutné, aby byla větší nebo rovna maximu ze všech _rule pravidel).

    {host|user}_rule pravidlo specifikuje samotné limity, podle kterých se určuje, kdy, komu a na jak dlouho bude zablokován přístup. Výše uvedený příklad znamená, že přístup bude zablokován z IP adresy, která má na svědomí více jak 10 pokusů v 1 hodině nebo více jak 30 pokusů v 1 dni a to pro všechny účty po dobu 1 hodiny, resp. 1 dne. Nebo bude zablokován konkrétní účet kromě roota pro libovolnou IP, pokud na něj bylo provedeno (odkudkoliv) vice jak 10 pokusů v 1 hodině nebo 30 pokusů v 1 dni, a to po dobu 1 hodiny, resp. 1 dne.

    Podrobnou gramatiku, včetně sémantiky lze nalézt v dokumentaci.

    V akci

    Účinnost si můžete zkontrolovat stejnojmennou utilitkou pam_abl, která umožňuje vypsat chybné pokusy včetně aktuálního stavu v agregované formě:

    Failed users:
        abinitioforum (2)
            Not blocking
        absurdir_deadphp (2)
            Not blocking
        admin (8)
            Not blocking
        aecpro (2)
            Not blocking
        akcesbenefit (2)
    …
    
    Failed hosts:
        147.251.53.122 (70)
            Blocking users [*]
        202.125.142.110 (821)
            Not blocking
        69.229.202.54 (18)
            Not blocking
    

    nebo i podrobné:

     147.251.53.122 (70)
            Mon Jun  6 16:26:01 2005
            Mon Jun  6 16:25:58 2005
            Mon Jun  6 16:25:53 2005
            Mon Jun  6 16:25:50 2005
    …
    

    V logu SSH démona, pak přibudou tyto řádky:

    Jun  6 11:21:07 (none) sshd[31111]: Invalid user test from 69.229.202.54
    Jun  6 11:21:07 (none) sshd[31112]: Invalid user test from 69.229.202.54
    Jun  6 11:21:08 (none) sshd[31112]: Failed password for invalid user test from 69.229.202.54 port 41178 ssh2
    Jun  6 11:21:08 (none) sshd[31111]: Failed password for invalid user test from 69.229.202.54 port 57800 ssh2
    Jun  6 11:21:10 (none) sshd[31115]: Invalid user guest from 69.229.202.54
    Jun  6 11:21:10 (none) sshd[31116]: Invalid user guest from 69.229.202.54
    Jun  6 11:21:10 (none) sshd[31115]: Failed password for invalid user guest from 69.229.202.54 port 41236 ssh2
    Jun  6 11:21:10 (none) sshd[31116]: Failed password for invalid user guest from 69.229.202.54 port 57861 ssh2
    Jun  6 11:21:12 (none) sshd[31119]: Invalid user admin from 69.229.202.54
    Jun  6 11:21:12 (none) sshd[31120]: Invalid user admin from 69.229.202.54
    Jun  6 11:21:12 (none) sshd[31119]: Failed password for invalid user admin from 69.229.202.54 port 41303 ssh2
    Jun  6 11:21:12 (none) sshd[31120]: Failed password for invalid user admin from 69.229.202.54 port 57928 ssh2
    Jun  6 11:21:14 (none) sshd[31123]: Invalid user admin from 69.229.202.54
    Jun  6 11:21:14 (none) pam_abl[31123]: Blocking access from 69.229.202.54 to service sshd, user admin
    Jun  6 11:21:14 (none) sshd[31123]: Failed password for invalid user admin from 69.229.202.54 port 41345 ssh2
    Jun  6 11:21:16 (none) sshd[31124]: Invalid user admin from 69.229.202.54
    Jun  6 11:21:16 (none) pam_abl[31124]: Blocking access from 69.229.202.54 to service sshd, user admin
    Jun  6 11:21:16 (none) sshd[31124]: Failed password for invalid user admin from 69.229.202.54 port 57970 ssh2
    Jun  6 11:21:19 (none) sshd[31127]: Invalid user user from 69.229.202.54
    Jun  6 11:21:19 (none) pam_abl[31127]: Blocking access from 69.229.202.54 to service sshd, user user
    Jun  6 11:21:19 (none) sshd[31127]: Failed password for invalid user user from 69.229.202.54 port 58074 ssh2
    

    Utilitka pam_abl je také určena k vyčistění databáze od starých záznamů podle _purge pravidel (pam modul to nedělá). Spouštět ji můžete např. každý den z cronu. Zrovna tak umí ruční odblokování dané IP nebo účtu.

    Nevýhody a chyby

    Jedná se o poměrně mladý projekt, takže nějaké ty chybky či chytáky, o kterých se dokumentace nezmiňuje, obsahuje:

           

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    6.6.2005 19:44 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Dík
    Dík za info :-)
    6.6.2005 21:01 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Jak pam_abl rozezná špatný a dobrý pokus o přihlášení?
    Koukám, že pam_abl je uvedené před pam_unix. Jak tedy pozná, zda šlo o správný nebo špatný pokus o přihlášení? Nemělo by být pořadí obrácené? Nebo mi uniká nějaká vlastnost PAMu, která to umožňuje?

    Radek
    6.6.2005 21:46 petr_p
    Rozbalit Rozbalit vše Re: Jak pam_abl rozezná špatný a dobrý pokus o přihlášení?
    PAM system poskytuje system hacku, na ktere se mohou jednotlive moduly navesit, a tak byt informovany o urcitych udalostech v budoucich modulech (napr. selhani autentizace).

    Navic, pokud mate u pam_unix (nebo jineho modulu, ktery provadi skutecnou autentizaci) priznak sufficient (a u systemu s vice autentizacnimi systemy, napr. kerberos + unix2, se tomu nevyhnete), modul pam_abl by v pripade uspesne autentizace vubec nebyl natazen a inicalizovan.

    Proto musi byt pam_abl zavolan pred pam_unix (ci jinym modulem, ktery provadi skutecnou autentizaci).
    7.6.2005 00:52 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Re: Jak pam_abl rozezná špatný a dobrý pokus o přihlášení?
    Prave kvuli tomu sufficient jsem myslel, ze je to tak, ze kdyz se modul spusti, tak autentifikace nebyla uspesna, pokud uspesna byla, tak se vubec nespusti... Aspon tak funguje to pam_deny nakonci ne?

    Jinak diky za novou informaci, ohledne tech hacku, to jsem nevedel.

    Radek
    7.6.2005 03:28 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Pársování logů
    A protoze se mi pam_abl nechtelo na mem RH9 prelozit (asi nejaka zavi(s)lost kvuli verzi DB), napsal jsem si onen kontrolovaci skriptik... Neni to nic uzasneho, ale snad to funguje :)
    #!/bin/bash
    iptables -N sshblock 2>/dev/null
    iptables -F sshblock 2>/dev/null
    for addr in `
    (
    cat /var/log/secure
    gzip -d -c /var/log/secure.1.gz
    gzip -d -c /var/log/secure.2.gz
    ) | grep 'Failed password for illegal user' |\
    sed 's/.*from \([^ ]*\).*/\1/' |\ sort | uniq -c |\
    sort -n -r | grep -v '^[^0-9]*[0-9][^0-9]' |\
    sed 's/^[^0-9]*[0-9]*[^0-9]\(.*\)/\1/'` ; do
    if ! [ "$addr" == "12.34.56.78" ] ; then
      iptables -A sshblock -s $addr -j MIRROR
    fi;
    done;
    
    A pak uz staci jen na prihodnem miste zaradit ten chain nekam do firewallu...

    Radek
    7.6.2005 10:25 petr_p
    Rozbalit Rozbalit vše Re: Pársování logů
    Ad DB: Mate nainstalovany db-devel? Verze, proti kterym to autor zkousel, jsou popsany na domovske strance (ja jedu na 4.2).

    Obecne k parsovani: Prave ze nefunguje. Lepe receno, zablokuje jakoukoliv IP, z ktere se alespon jednou nepodarilo prihlasit.

    Pokud byste chtel (a asi chtel) robusnejsi reseni, musel byste pocitat pocet selhani (napr. pouzit uniq -c) za jednotku casu (to uz zavani datumovou aritmetikou). A taky musel vyresit opetovne odblokovani po urcite dobe (v primitvni podobne by stacil jednou dene flush ipt chainu). Dal pokud pouzivate vice IP protokolu, musel byste rozlisovat IPv4 a IPv6 (iptables a ip6tables jsou oddeleny).

    A vymyslet kolo nema smysl. Proto existuje PAM modul, ktery muzete nasadil na libovolnou sluzbu.
    7.6.2005 14:12 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Re: Pársování logů
    AD DB) Pro muj RH9 je pouze db4-devel. Zkousel jsem nainstalovat i compat-db-cosi.rpm, ale ten nainstaloval jenom knihovny, nikoliv hlavicky nebo zdrojaky. A instalovat BerkeleyDB ze zdrojaku se mi moc nechcelo, nerad bych neco zkonil... :)

    AD parsovani)

    sort | uniq -c | sort -n -r | grep -v '^[^0-9]*[0-9][^0-9]' |

    Ac to nevypada pekne, tak je to presne to, ze to nalezene IP vezme, seradi, spocita vyskyty (uniq -c) a vyhazi vsechny, ktere maji pocet chybnych pokusu 0-9. Takze k zablokovani dochazi az po 10 spatnych pokusech.

    Co se casoveho meritka tyce, tak to je vyreseno tim, ze se zdrojove logy rotuji, takze casem (typicky po 7 dnech) IP adresa ze seznamu odstrani (pri kazdem zavolani na zacatku ten chain Flushnu a znova cely vytvorim). Pripadne by se to dalo vyresit tim, ze bych tam dal nejaky tail -n 2000 a bral treba jen poslednich 2000 radku z logu (pak bych asi jeste musel upravit jejich poradi). Uznavam, ze jsou to fuj-fuj berlicky, ale lepsi nez dratem do oka, ne? Ipv6 zatim nepouzivam a pokud vubec nekdy budu, tak toho budu muset resit vyrazne vic :)

    Samozrejme, ze bych radsi pouzil uz udelany kolo, ale kdyz mi nejde nasadit na moje auto. A nez do nej busit kladivem, aby sedlo a pak mi nekde upadlo.... :)
    Mikos avatar 7.6.2005 05:01 Mikos | skóre: 34 | blog: Jaderný blog | Praha
    Rozbalit Rozbalit vše Děkuji!
    Moooc vám děkuji za tuhle informaci! Přesně něco takového jsem asi před půl rokem hledal, ale nic sem nenašel a v různých fórech se mi jen dostalo odpovědí jako že to co chci je špatné řešení, protože by toho útočník mohl využít k cílenému zablokování IP adres, atp. To mě ale vubec nepálí, prostě sem to přesně tak chtěl! ;-) Nicméně tenkrát sem se prostě spokojil s tím že nic takového pro linux není a dál po tom nepátral.

    Takže ještě jednou moc děkuji! Tohle je skvělá věc...
    CETERUM CENSEO DRM ESSE DELENDAM Ostatně soudím, že DRM musí být zničeno!
    7.6.2005 08:00 digri | skóre: 12 | blog: digri
    Rozbalit Rozbalit vše blog vs clanek
    tohle by si zaslouzilo tez vyjit jako clanek, at to tu nezapadne :-)
    14.6.2005 19:50 arTee
    Rozbalit Rozbalit vše pam_abl a debian
    Ahoj, nejak nemuzu rozchodit pam_abl v debianu. Vlozil jsem nasledujici radek do /etc/pam.d/ssh (/etc/pam.d/sshd v debianu neni):

    auth required /lib/security/pam_abl.so \ config=/etc/security/pam_abl.conf

    a nevypada to, ze by se to chytalo... Ani se nevytvori databaze v /var/lib/abl :( Logy toho taky moc nenapovi... Kompiloval jsem to oproti db4.3... Nevite jak na to?

    Dik moc Roman
    23.6.2005 16:20 petr_p
    Rozbalit Rozbalit vše Re: pam_abl a debian
    Mate openssh kompilovane s podporou PAM? Mate povoleno pouziti PAMu v sshd_config? Mate v /etc/securit/pam_abl.conf uvedene cesty k databazovym souborum?

    Pripadne si puste sshd v ladicim rezimu bez odpojeni od terminalu. Pripadne jej stracnete. Tam se urcite dozvite, co to dela. A kdyz si domyslite, co by to delat melo, tak budete vedet, co to nedela.
    26.9.2005 15:00 Kamil | skóre: 18 | blog: bejkarny
    Rozbalit Rozbalit vše Re: pam_abl a debian
    Máte povoleno ChallengeResponseAuthentication v sshd_config? PasswordAuthentication zakažte. Mně to tak funguje v pohodě na sarge s db 4.3
    26.9.2005 15:57 Kamil | skóre: 18 | blog: bejkarny
    Rozbalit Rozbalit vše Re: pam_abl a debian
    ehm, omlouvám se, samozřejmě že to tak funguje, ale zmínka o ChallengeResponseAuthentication v článku dává najevo za jakých podmínek.
    2.2.2009 19:35 snog
    Rozbalit Rozbalit vše Nebo nepatri oblubencom :D

    Doporucujem nechat otvorenu aspon jednu sesnu. :D

    ...Vypadalo to tak jednoducho, :) bohuzial neviem cim to je ale nefunguje...

    No nic aspom mam dovod sa poprechadzat na opacnu stranu Prahy. :D

    PS: Bezpecnost ssh zabespecena. :D

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.