Byla vydána (𝕏) nová verze 2025.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.
Dánské ministerstvo pro digitální záležitosti má v plánu přejít na Linux a LibreOffice [It's FOSS News].
V úterý Google vydal Android 16. Zdrojové kódy jsou k dispozici na AOSP (Android Open Source Project). Chybí (zatím?) ale zdrojové kódy specifické pro telefony Pixel od Googlu. Projekty jako CalyxOS a GrapheneOS řeší, jak tyto telefony nadále podporovat. Nejistá je podpora budoucích Pixelů. Souvisí to s hrozícím rozdělením Googlu (Google, Chrome, Android)?
Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.101 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.101 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
V Brně na FIT VUT probíhá třídenní open source komunitní konference DevConf.CZ 2025. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Vyloučení technologií, které by mohly představovat bezpečnostní riziko pro stát, má umožnit zákon o kybernetické bezpečnosti, který včera Senát schválil spolu s novelami navazujících právních předpisů. Norma, kterou nyní dostane k podpisu prezident, počítá rovněž s prověřováním dodavatelů technologií pro stát. Normy mají nabýt účinnosti od třetího měsíce po jejich vyhlášení ve Sbírce zákonů.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.6.
Po Red Hat Enterprise Linuxu a AlmaLinuxu byl v nové stabilní verzi 10.0 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Bylo vydáno Eclipse IDE 2025-06 aneb Eclipse 4.36. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Americká filmová studia Walt Disney a Universal Pictures podala žalobu na provozovatele populárního generátoru obrázků pomocí umělé inteligence (AI) Midjourney. Zdůvodňují to údajným porušováním autorských práv. V žalobě podané u federálního soudu v Los Angeles označují firmu za „bezednou jámu plagiátorství“, neboť podle nich bez povolení bezostyšně kopíruje a šíří postavy z filmů jako Star Wars, Ledové království nebo Já, padouch, aniž by do nich investovala jediný cent.
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.
Taky po vás jdou? Už jste vyzkoušeli všechny zaručené recepty:
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.
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.
Úč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.
Jedná se o poměrně mladý projekt, takže nějaké ty chybky či chytáky, o kterých se dokumentace nezmiňuje, obsahuje:
_rule
pravidla (tj. údaj
za lomítkem).user_db=/var/lib/abl/users.db user_purge=30d user_rule=!*:5/1h
ChallengeResponseAuthentication no
v konfiguraci sshd.
sshd_config
nastavte
MaxAuthTries 1
nebo na to pamatujte v pam_abl.conf
.
config
.
Tiskni
Sdílej:
#!/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
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.
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.... :)
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