Po více než roce vývoje od vydání verze 5.40 byla vydána nová stabilní verze 5.42 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 64 vývojářů. Změněno bylo přibližně 280 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Byla vydána nová stabilní verze 7.5 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 138. Přehled novinek i s náhledy v příspěvku na blogu.
Sniffnet je multiplatformní aplikace pro sledování internetového provozu. Ke stažení pro Windows, macOS i Linux. Jedná se o open source software. Zdrojové kódy v programovacím jazyce Rust jsou k dispozici na GitHubu. Vývoj je finančně podporován NLnet Foundation.
Byl vydán Debian Installer Trixie RC 2, tj. druhá RC verze instalátoru Debianu 13 s kódovým názvem Trixie.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za červen (YouTube).
Libreboot (Wikipedie) – svobodný firmware nahrazující proprietární BIOSy, distribuce Corebootu s pravidly pro proprietární bloby – byl vydán ve verzi 25.06 "Luminous Lemon". Přidána byla podpora desek Acer Q45T-AM a Dell Precision T1700 SFF a MT. Současně byl ve verzi 25.06 "Onerous Olive" vydán také Canoeboot, tj. fork Librebootu s ještě přísnějšími pravidly.
Licence GNU GPLv3 o víkendu oslavila 18 let. Oficiálně vyšla 29. června 2007. Při té příležitosti Richard E. Fontana a Bradley M. Kuhn restartovali, oživili a znovu spustili projekt Copyleft-Next s cílem prodiskutovat a navrhnout novou licenci.
Svobodný nemocniční informační systém GNU Health Hospital Information System (HIS) (Wikipedie) byl vydán ve verzi 5.0 (Mastodon).
Open source mapová a navigační aplikace OsmAnd (OpenStreetMap Automated Navigation Directions, Wikipedie, GitHub) oslavila 15 let.
Vývojář Spytihněv, autor počítačové hry Hrot (Wikipedie, ProtonDB), pracuje na nové hře Brno Transit. Jedná se o příběhový psychologický horor o strojvedoucím v zácviku, uvězněném v nejzatuchlejším metru východně od všeho, na čem záleží. Vydání je plánováno na čtvrté čtvrtletí letošního roku.
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