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:44 | IT novinky

    Nizozemská vláda ve snaze šetřit a zvyšovat efektivitu s využitím umělé inteligence (AI) hodlá zrušit asi 25.000 pracovních míst ve státní správě. Cílem je postupně dosáhnout ročních úspor až 3,5 miliardy eur (85,2 miliardy Kč). Na konci loňského roku ve státní správě pracovalo rekordních 160.000 lidí. „Nemůžeme pokračovat v tom, co jsme dělali dosud,“ uvedl státní tajemník pro efektivní fungování vlády Eric van den Burg. „Proto

    … více »
    Ladislav Hagara | Komentářů: 8
    dnes 12:00 | IT novinky

    Příspěvek na blogu PRUSA 3D představuje fotoaparát CAIM1 (Counter Artificial Intelligence Machine 1). Uměle vytvořený obsah je každým dnem těžší rozeznat od skutečných záběrů či fotografií, což podrývá důvěryhodnost žurnalistiky, archivních materiálů i každodenní tvorby obsahu. Fotoaparát CAIM1 byl vyvinut právě k tomu, aby ověřoval původ fotografií a videí přímo během jejich pořizování. Uvnitř fotoaparátu se nachází hardwarová Web3 peněženka se zabezpečovacím čipem Tropic Square TROPIC01.

    Ladislav Hagara | Komentářů: 3
    dnes 00:11 | Nová verze

    Jonathan Thomas oznámil vydání nové verze 4.1 video editoru OpenShot (Wikipedie). Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Zajímavý článek

    Při běžné migraci virtuálního stroje mezi hypervizory se jeho MAC adresa přesune na jiný leaf switch. EVPN tuto změnu distribuuje pomocí BGP Type-2 route a MAC mobility sequence number. Problém nastává, pokud útočník podvrhne zdrojovou MAC adresu jiného zařízení. Leaf může změnu interpretovat jako legitimní přesun MAC a rozšířit ji přes BGP do celé fabric. Výsledkem může být přesměrování provozu určeného původnímu zařízení. Autor článku rozebírá možnosti detekce pomocí sledování MAC moves, BGP route reflektorů a kontroly na přístupové vrstvě.

    vencour | Komentářů: 0
    včera 15:11 | Nová verze

    Vývojáři desktopového prostředí Enlightenment (Wikipedie) a souvisejících knihoven Enlightenment Foundation Libraries (EFL) vydali nové verze. Enlightenment byl vydán ve verzi 0.28.0 a Enlightenment Foundation Libraries ve verzi 1.29.

    Ladislav Hagara | Komentářů: 4
    včera 13:55 | Zajímavý článek

    Cloudflare zjistil, že některé odpovědi modelu GLM-5.3 obsahovaly části dat z předchozích požadavků jiných zákazníků. Příčinou byla kombinace chybné konfigurace a chyby v inference enginu SGLang. Model podporoval kontextové okno 1 048 576 tokenů, ale GPU KV cache pool měl kapacitu pouze 681 280 tokenů. Při překročení kapacity docházelo k nesprávnému zpracování odmítnutého požadavku. Decode část systému následně pracovala se starými

    … více »
    vencour | Komentářů: 1
    včera 13:00 | Zajímavý článek

    Vývojáři Knot Resolver vysvětlují, jak změnili rozhodování o tom, které DNS záznamy ponechat v cache a které odstranit. Článek obsahuje skutečná měření: devět hodin DNS provozu při 2 000 QPS, srovnání cache o velikosti 25 MB a 40 GB a také porovnání s BIND 9, kromě algoritmů obsahuje konkrétní doporučení pro konfiguraci a diagnostiku.

    vencour | Komentářů: 0
    30.10. 13:44 | IT novinky

    Největší kryptoměnová burza světa Binance se stala terčem útoku, při kterém podvodníci odcizili během několika minut kryptoměny v hodnotě přibližně 6,3 miliardy dolarů. Jedná se o největší kryptoměnovou krádež v historii, přibližně čtyřikrát větší než loňský útok na burzu Bybit. Binance se podařilo ve spolupráci s partnery zmrazit aspoň aktiva v hodnotě zhruba 3 miliard dolarů a slíbila, že veškeré ztráty pokryje z vlastních prostředků.

    Ladislav Hagara | Komentářů: 16
    30.10. 02:16 | Bezpečnostní upozornění

    Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na The Hacker News.

    Max | Komentářů: 20
    29.10. 23:22 | Zajímavý software

    Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?

    Stanislav Hoferek | Komentářů: 13
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2962 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: NetFilter a port-knocking

    7.8.2005 01:11 © | skóre: 37 | blog: escaped
    NetFilter a port-knocking
    Přečteno: 526×
    Rozhodl jsem se, že si nějak naimplementuji port-knocking, ale rád bych, abych k otevření nepotřeboval žádného ťukacího klienta a k implementaci na straně serveru žádný dodatečný software. Nakonec jsem s těmito požadavky nalezl pouze následující, ale není to zcela vyhovující. Rád bych touto cestou požádal o pomoc s rozšířením či vylepšením.
    $IPTABLES -N INTERNET_SSH                                                                                                                  
    $IPTABLES -A INPUT -i $INTERNET -p tcp -j INTERNET_SSH                                                                                     
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 22   -m recent --rcheck --name SSH          -j ACCEPT                 
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 1600 -m recent          --name SSH --remove -j DROP                   
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 1601 -m recent          --name SSH --set    -j DROP                   
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp --dport 1602 -m recent          --name SSH --remove -j DROP                   
    
    Stačí telnetem zaťukat na port 1601 a Sezame otevři se. Na port 1600 a je zase zavřeno.

    Jenže bych rád, abych musel zaťukat na vícero portů anebo když ne to, tak alespoň aby se to otevřelo jen pro danou IP adresu, ze které ťukám a nejlépe jen pro dané username. Úplně nejlepší by to bylo vše naráz, ale to už bych asi chtěl až moc. Každopádně NetFilter je velice mocný nástroj, tak třeba někoho alespoň něco z toho, co bych rád napadne.

    Odpovědi

    7.8.2005 01:57 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Hm, tak s tím UID jsem přestřelil, to opravdu nepůjde. Pro danou IP už to mám pořešené, takže zbývá těch několik portů za sebou. Nenapadá někoho alespoň to?
    7.8.2005 02:10 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Tak zatím to mám asi takto nějak. Stále to neumí ale dvě věci. Nelze si zaťukat na sekvenci portů, což by bylo bezpenější a teď mi napadlo, že úplně super by bylo, kdyby se to otevřelo jen třeba na 10 vteřin a pak to ponechávalo jen ESTABLISHED spojení na port 22 z toho vzdáleného stroje, který je specifikován, tj. po např. 10 vteřinách by se port zase zavřel a zůstala ponechána jen ESTABLISHED spojení z dané IP. Jak na to?
    $INTERNET=eth0                              # interface
    $STROJ=10.10.10.10                          # povoleny stroj
    
    $IPTABLES -N INTERNET_SSH_PK                                                                                                                                                       
    $IPTABLES -A INPUT -i $INTERNET -p tcp -j INTERNET_SSH_PK                                                                                                                          
                                                                                                                                                                                       
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
              -m state  --state NEW -m tcp -p tcp --dport 22   \
              -m recent --rcheck --name SSH -j ACCEPT                              
     
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
              -m state  --state NEW -m tcp -p tcp --dport 1600 \
              -m recent --name SSH --remove -j DROP                                
     
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
              -m state  --state NEW -m tcp -p tcp --dport 1601 \
              -m recent --name SSH --set -j DROP                                
     
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
              -m state  --state NEW -m tcp -p tcp --dport 1602 \
              -m recent --name SSH --remove -j DROP
    
    7.8.2005 03:01 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    No, takže časový limit jsem také vyřešil, a to takto:
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $STROJ \
              -m state  --state NEW -m tcp -p tcp --dport 22   \
              -m recent --rcheck --seconds 10 --name SSH -j ACCEPT
    ...
    ...
    
    Takže zbývá už jen to, aby se pro otevření mohlo klepat na více portů než jen jeden jediný.
    7.8.2005 12:09 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Je to sice fuj řešení, ale napadlo mě, že by se možná dalo definovat několik jmen (SSH1, SSH2,...) a zaklepáním na první port by se otevřel druhý port, zaklepáním na ten by se otevřel další a tak dál.
    Quando omni flunkus moritati
    7.8.2005 13:07 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Nechápu. :-(
    7.8.2005 13:32 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Je to jenom takový nápad - sám jsem o existenci port knockingu neměl do včerejška ani šajn :-)
    $IPTABLES -N INTERNET_SSH                                                                                                                  
    $IPTABLES -A INPUT -i $INTERNET -p tcp -j INTERNET_SSH                                                                                     
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
              --dport 22 -m recent --rcheck --name SSH2 -j ACCEPT
    
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
              --dport 1600 -m recent --name SSH --remove \
              --name SSH2 --remove -j DROP                   
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
              --dport 1601 -m recent --name SSH --set -j DROP                   
    
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
              --dport 1603 -m recent ! --rcheck --name SSH -j DROP
    $IPTABLES -A INTERNET_SSH -m state --state NEW -m tcp -p tcp \
              --dport 1603 -m recent --name SSH2 --set -j DROP
    Idea je, že při ťukání na port 1603 se testuje, jestli SSH je set (ťukalo se na 1601) - když ne, paket se zahodí. Když ano, uplatní se další pravidlo, které nastaví SSH2, což už umožní spojení na port 22.

    Jak říkám, je to jenom takový nápad - nejsem si jistý, že ten vykřičník u testování na portu 1603 bude fungovat ani jestli jde vymazat SSH i SSH2 naráz (aby se ťukáním na 1600 zavřelo všechno)
    Quando omni flunkus moritati
    7.8.2005 14:22 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Hm, pokud se otevírací doba nastaví na nějakou rozumnou hodnotu, např. 5 vteřin, tak už není potřeba nic zavírat. Každopádně to ale tak jako tak bude chtít jednu věc, omezit možnost brute-forcu z povoleného stroje. To se právě snažím vymyslet a nějak se mi stále nedaří. Až to bude, samosebou to sem napíši.

    Také se podívám na tento váš nápad, i když mi stále není zcela jasná idea. Asi se spíš bude muset nějak využít značkování a mangle. No, uvidíme. Uvítám i další nápady.
    7.8.2005 15:31 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Dospěl jsem nakonec k vcelku přijatelnému řešení, které pokrývá několik jevů:

    a) blokace pokusů o brute-force na port 22 odkudkoli, pokud není explicitně povoleno jinde jinak (povolíme 1 pokus za 20 vteřin).

    b) ťukání na určitý port ze specifického hosta, které funguje tak, že po zaťukání máme jen 3 vteřiny na uskutečnění SSH spojení a poté se port opět uzavře.

    Celé to nyní tedy funguje tak, že z povoleného stroje zaťukáme na příslušný port a během následujících 3 vteřin se zalogujeme (b). Nepodaří-li se nám to, holt si počkáme 20 vteřin, než se půjde znova pokusit o SSH spojení (a).
    
    IPTABLES=/sbin/iptables
    
    ### AN INTERFACE
    
    INTERNET=eth0
    
    ### NOTICE: DEFAULT POLITIC IS TO DROP EVERYTHING AS USUAL
    
    .
    .
    .
    
    ### BLOCK INCOMING SSH BRUTE-FORCE ATEMPTS 
    ### ONE ATEMPT PER 10 SECONDS ONLY FOR SSH IS ALLOWED                                                                                
                                                                                                                                                                                       
    $IPTABLES -N INTERNET_SSH_BF                                                                                                                                                       
    $IPTABLES -A INPUT -i $INTERNET \
              -p tcp \
              -j INTERNET_SSH_BF                                                                                                                                                                                                                                                                                                             
    
    $IPTABLES -A INTERNET_SSH_BF -i $INTERNET \
              -p tcp --dport 22 \
              -m recent --update --seconds 20 \
              -j REJECT --reject-with icmp-port-unreachable                                         
    
    $IPTABLES -A INTERNET_SSH_BF -i $INTERNET \
              -p tcp --dport 22 --tcp-flags syn,ack,rst syn \
              -m recent --set \
              -j ACCEPT                                   
    
    ### PORT-KNOCKING FROM SPECIFIC HOST
    ### PORT WILL BE OPNENED FOR 3 SECONDS ONLY
    ### PORT-KNOCKING IS POSSIBLE FROM ONE HOST ONLY
    
    OPENEDTIME=3
    ALLOWEDHOST=10.10.10.10
    KNOCKPORT=1600
    
    $IPTABLES -N INTERNET_SSH_PK                                                                                                                                                       
    $IPTABLES -A INPUT -i $INTERNET \
              -p tcp -j INTERNET_SSH_PK                                                                                                                          
                                                                                                                                                                                       
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $ALLOWEDHOST \
              -m state --state NEW \
              -p tcp --dport 22 \
              -m recent --rcheck --seconds $OPENEDTIME --name SSH_PK \
              -j ACCEPT
                             
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET -s $ALLOWEDHOST \
              -m state --state NEW \
              -p tcp --dport $KNOCKPORT \
              -m recent --name SSH_PK --set \
              -j DROP 
    
    Jedinou nevýhodou může být, že když někdo bude zrovna provozovat na náš stroj brute-force, tak se také nezalogujeme, dokud brute-force neskončí. To není příjemná představa a je to asi obecná vlastnost všech port-knockingů jen na jeden port. Myslím, že právě možnost zaťukat na posloupnost portů, by to mohla vyřešit, ale nepovedlo se mi zatím vytvořit žádnou funkční implementaci. Dám opět vědět, jak to pokračuje. Nápady jsou stále vítány.
    7.8.2005 15:49 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Aha, tak výše uvedené je zjevně úplně špatně. Prosím, neberte to vážně. Chová se to jinak, než jsem původně myslil. :-(
    7.8.2005 18:13 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Tak já to pro tentokrát vzdávám, už mě to nebaví, každopádně se k tomuto vláknu zase vrátím, jakmile jen mě něco napadne. Podařilo se mi mezitím naimplementovat port-knocking na dva porty, ale pravidla byla příliš složitá a navíc se to chovalo nějak podivně. Jakmile se mi podaří objevit způsob, jak implementovat libovolnou posloupnost portů a budu-li vidět, že to funguje dobře, hodím to sem. Rozhodně nedoporučuji používat nic ze zde již uvedeného. Jediné, co mi zatím funguje naprosto bez problémů je následující:
    INTERNET=eth0
    
    ALLOW_HOST=10.10.10.10
    OPEN_TIME=3
    KNOCK_PORT=1601
    
    $IPTABLES -N INTERNET_SSH_PK                                                                                                                                                        
    
    $IPTABLES -A INPUT -i $INTERNET \
              -p tcp \
              -j INTERNET_SSH_PK                                                                                                                           
                                                                                                                                                                                        
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET \
              -s $ALLOW_HOST \
              -m state --state NEW \
              -p tcp --dport 22 \
              -m recent --rcheck --seconds $OPEN_TIME --name SSH_PK \
              -j ACCEPT
    
    $IPTABLES -A INTERNET_SSH_PK -i $INTERNET \
              -s $ALLOW_HOST \
              -m state --state NEW \
              -p tcp --dport $KNOCK_PORT -m recent --name SSH_PK --set \
              -j DROP                                             
    
    Je to tedy opět ta původní a nejjednodušší verze klepání na jediný port s modifikací, že je nutno se zalogovat do určitého počtu vteřin. Poté se port opět uzavře. Na vzáleném stroji provedeme zaťukání a zalogování takto:
    telnet adresa 1601 ; ssh uzivate@adresa
    
    Po stisku ctrl-c se provede druhý příkaz a dojde k zalogování. Po třech vteřinách je port opět uzavřen. Hm, nic moc, ale je to alespoň něco. :-D
    22.12.2005 11:33 © | skóre: 37 | blog: escaped
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    UPDATE: uz dlouho tomu sice, co jsem to napsal, ale ted jsem si nahodou vsimnul, ze jsem kdysi zalozil tento thread, takze:

    Nasledujici script nastavi firewall tak, ze po zatukani na porty 100,200,300,400 se otevre port 22 na dobu 5 vterin. Jde si s tim libovolne pohrat, treba tukani na klidne 20 portu neni problem. :)
    # Netfilter/IPtables - example of multiple-port knocking
    # Note: Knock ports 100,200,300,400 to open SSH port for 5 seconds.
    # Nice thing to knock TCP with is `telnet' program:
    # $> alias k='telnet ip_address_or_hostname'
    # $> k 100 ; k 200 ; k 300 ; k 400 ; ssh ip_address_or_hostname
    # Then press Ctrl-C 4 times. That's all. Enjoy.
    
    HOST_IP="12.34.56.78"
    
    /sbin/iptables -N INTO-PHASE2
    /sbin/iptables -A INTO-PHASE2 -m recent --name PHASE1 --remove
    /sbin/iptables -A INTO-PHASE2 -m recent --name PHASE2 --set
    /sbin/iptables -A INTO-PHASE2 -j LOG --log-prefix "INTO PHASE2: "
    
    /sbin/iptables -N INTO-PHASE3
    /sbin/iptables -A INTO-PHASE3 -m recent --name PHASE2 --remove
    /sbin/iptables -A INTO-PHASE3 -m recent --name PHASE3 --set
    /sbin/iptables -A INTO-PHASE3 -j LOG --log-prefix "INTO PHASE3: "
    
    /sbin/iptables -N INTO-PHASE4
    /sbin/iptables -A INTO-PHASE4 -m recent --name PHASE3 --remove
    /sbin/iptables -A INTO-PHASE4 -m recent --name PHASE4 --set
    /sbin/iptables -A INTO-PHASE4 -j LOG --log-prefix "INTO PHASE4: "
    
    /sbin/iptables -A INPUT -m recent --update --name PHASE1
    
    /sbin/iptables -A INPUT -p tcp --dport 100 -m recent --set --name PHASE1
    /sbin/iptables -A INPUT -p tcp --dport 200 -m recent --rcheck --name PHASE1 -j INTO-PHASE2
    /sbin/iptables -A INPUT -p tcp --dport 300 -m recent --rcheck --name PHASE2 -j INTO-PHASE3
    /sbin/iptables -A INPUT -p tcp --dport 400 -m recent --rcheck --name PHASE3 -j INTO-PHASE4
    
    /sbin/iptables -A INPUT -p tcp -s $HOST_IP --dport 22 -m recent --rcheck --seconds 5 --name PHASE4 -j ACCEPT
    
    Tento ukazkovy script si lze take stahnout zde, popr. je k nalezeni tez na strankach Debian Administration.
    22.12.2005 13:05 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Re: NetFilter a port-knocking
    Doporucuju zkusit ipset ipset.netfilter.org a jejich iptree. Ta totiz umi i starnuti zaznamu a pridavani do setu z iptables. Postup je asi tokovy (pomerne nepresne, na presnou syntaxi si z hlavy nevzpomenu):

    Zalozit dva iptree sety s nejakym timeoutem ssh1 (10s) a ssh2 (2min)

    A potom pravidla:

    iptables -A INPUT -p tcp --dport 1234 -j SET --add ssh1 src

    iptables -A INPUT -p tcp -m set --set ssh1 --dport 2345 -j SET --add ssh2 src

    iptables -A INPUT -p tcp -m set --set ssh2 --dport 22 -j ACCEPT

    Radek

    Založit nové vlákno • Nahoru

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

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