Příspěvek na blogu Codean Labs rozebírá zranitelnost CVE-2024-4367 v PDF.js, tj. mj. prohlížeči PDF souborů ve Firefoxu. Při otevření útočníkem připraveného pdf souboru může být spuštěn libovolný kód v JavaScriptu. Vyřešeno ve Firefoxu 126.
Lazygit byl vydán ve verzi 0.42.0. Jedná se o TUI (Text User Interface) nadstavbu nad gitem.
K open source herní konzole Picopad přibyla (𝕏) vylepšená verze Picopad Pro s větším displejem, lepšími tlačítky a větší baterii. Na YouTube lze zhlédnout přednášku Picopad - open source herní konzole z LinuxDays 2023.
Byla vydána (𝕏) nová major verze 17 softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech GitLab (Wikipedie). Představení nových vlastností i s náhledy a videi v oficiálním oznámení.
Sovereign Tech Fund, tj. program financování otevřeného softwaru německým ministerstvem hospodářství a ochrany klimatu, podpoří vývoj FFmpeg částkou 157 580 eur. V listopadu loňského roku podpořil GNOME částkou 1 milion eur.
24. září 2024 budou zveřejněny zdrojové kódy přehrávače Winamp.
Google Chrome 125 byl prohlášen za stabilní. Nejnovější stabilní verze 125.0.6422.60 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 9 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Textový editor Neovim byl vydán ve verzi 0.10 (𝕏). Přehled novinek v příspěvku na blogu a v poznámkách k vydání.
Byla vydána nová verze 6.3 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.15.
Dnes ve 12:00 byla spuštěna první aukce domén .CZ. Zatím největší zájem je o dro.cz, kachnicka.cz, octavie.cz, uvycepu.cz a vnady.cz [𝕏].
Jiří Machálek z Laboratoří CZ.NIC připravil pro blog sdružení další statistiky spojené s projektem Honeynet. V přehledu je vedle jiného uvedeno i to, že nejaktivnější útočníci za poslední tři měsíce byli skryti ze dvěma tchajwanskými IP adresami; v obou případech se připojovali téměř výhradně na port 445, a to více než 88000krát (více než 14000krát nahrávali jednu variantu viru Conficker). Další významní útočníci byli z Ruska, Kazachstánu, Venezuely nebo Číny.
V aktuálním reportu jsou i dvě novinky. Jednou z nich je přehled nejčastěji nahrávaných virů; celkem bylo za uvedené období zaznamenáno 33165 nahrání virů (z toho 600 unikátních). Průměrně tedy jeden virus každé 4 minuty. Druhou zajímavou informací je potom přehled nejčastějších kombinací, které útočníci zkoušeli při přístupu na službu SSH v červenci.
Tiskni Sdílej:
Já se v tom nevyznám, ale jaký je rozdíl v tom zakázat rootovi přihlašovat se na ssh, když se pak jako uživatel můžu přihlásit na roota přes su?
Není v tom (podstatný) rozdíl. Co je ale skutečně užitečné, je zakázat autentizaci heslem (všem).
rekneme nejakych 7 znaku hesla roota versus 7 znaku jmena krat 7 znaku hesla plus 7 znaku roota, tedy nejmin 7^25krat slozitejsi)
Za prvé si pletete 7^25 a 25^7, cože je docela zásadní rozdíl. Za druhé by i po opravě váš výpočet fungoval pouze v případě, že by útočník obě hesla musel uhodnout současně, což není pravda. Snaha použít uživatelské jméno coby další heslo, je také hodně nešťastná. Takže ve skutečnosti tam není násobení ale sčítání a pouhým prodloužením (jednoho) hesla o jeden znak dostanu o (desítkový) řád vyšší bezpečnost proti útoku hrubou silou. Pokud autentizaci heslem zakážu úplně, jsem už úplně někde jinde někde úplně jinde.
Ale to už jsem tu vysvětloval tolikrát, že by stálo za to napsat na to FAQ - jenže on by ho někdo z těch, kdo věří na "princip dvou dveří" nejspíš hned "opravil".
su
(sudo
) důsledně nezkontroluje, že to není funkce nebo alias nebo úplně jiné su
/sudo
, tak na žádné hádání hesla roota vlastně ani dojít nemusí.
a před každým použitím su (sudo) důsledně nezkontroluje, že to není funkce nebo alias nebo úplně jiné su/sudoTohle uživatel zkontrolovat nemůže, respektive nenapadá mě způsob, jak by mohl.
Nemůže samozřejmě poznat to, že někdo, kdo už roota získal, nahradil /usr/bin/su
něčím jiným - ale v takovém případě už je stejně pozdě. Měl jsem na mysli spíš scénář, kdy útočník získá v první fázi přístup pod daným uživatelem a pak místo toho, aby se snažil lokálně hádat heslo roota, prostě nastaví alias nebo funkci nebo do ~/bin
dá vlastní binárku nebo skript (nebo symlink). To jsou věci, které se zkontrolovat dají, ale asi jen málokdo to opravdu dělá.
Na druhou stranu, když tak o tom přemýšlím, i tahle kontrola by šla hodně znepříjemnit, upraveným ls
počínaje, přes to, že se z ~/.bashrc
exec
-ne upravený shell, …
Na druhou stranu, když tak o tom přemýšlím, i tahle kontrola by šla hodně znepříjemnit, upraveným ls počínaje, přes to, že se z ~/.bashrc exec-ne upravený shell, …Přesně to jsem myslel.
u té druhé části je to obvykle pravděpodobnější
Jenže nepříznivost té druhé části uměle vytváříte podmínkou, že soukromý klíč není šifrovaný.
ROFL.
BTW - na ssh není třeba certifikátů, stačí dvojice klíčů. Jedinci, kteří jsou dost paranoidní na to, aby zakázali přihlášení na ssh heslem, budou AFAIK dost paranoidní i na to, aby si soukromý klíč zašifrovali - ostatně ssh-keygen
tuto volbu nabízí zcela standardně. Šifruje se, tuším, AES-128.
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAstrDBRm02D5twGH3N FU9p44VgqfvLPmVPD8RSwEbmk+2N8o4MVIBHJqGsLf0kM0BIw/sbImajqk YmLDwgw1L0hb3HHUbm6zj0OvwklIOo3q+cKrWU/A5TzJNfihdjYYx2cB7 GeEOveOlmAxB5wVlUfH7IRQsyShnds1s5sf2S5jV3TEgA0fHk56A99jrAg4D /qE92tLHzTOHlMhVTkGCQZmZDes08NXmiYwSedTcWysXgZ8gFpJhpaGgYgYAN h0BjKuOitp+1RNHKlzftWF+6A52kKeJRxG3Ltz83/iyz4whSxmfs6ebg/Mzvw Ulr3sqX7BbiFtAkQ7A/CMk9hKelw==Protože privátní klíč má pouze několik set bajtů, je možné jeho zabezpečení věnovat náležitou pozornost. Samozřejmostí je možnost šifrovat, kde je samozřejmě nutnost mít dostatečně bezpečné heslo. Další možností je uložení privátního klíče (nebo dokonce přímo generování) na hardwarovém zařízení, které je specielně navržené, aby privátní klíč nevydalo.
Protože ten klíč třeba je někde na NTB a někdo si jej prostě vezme (tam už řešíme zabezpečení přístupu ke klíči), nebo ještě snadněji, máte klíč v ssh-agent-ovi, a někdo si jen pustí terminál na tom NTB a je tam, pokud je to na heslo, tak toto nelze, žít v iluzi, že přihlašováním klíčem jsem si vyřešil bezpečnost je příjemné, nicméně může to být zranitelnější. Výčet toho, jak si zabezpečíte svoje PC, či jak zamykáte (zbytečně) obrazovku při odchodu není třeba rozebírat. Pokud bych se měl dostat na server a věděl o někom kdo tam má přístup a je navíc na stejné síti, určitě bych první věnoval pozornost jeho PC ne serveru.
parse error
Chápu to tak, že chcete říct, že s klíčem se dá nakládat prasácky, a že v tom případě může být bezpečnost výrazně nižší, než pokud se přihlašujete heslem, se kterým prasácky nenakládáte. O tom není sporu. O srovnání bezpečnosti těch dvou metod v obecné rovině to ovšem neříká zhola nic.
Zásadní rozdíl je v tom, že systém je „ohrožený“ ze všech míst, kde jsou klíče uložené.
Zatímco v případě přihlašování heslem je systém ohrožený ze všech míst, odkud se na server přihlašujete. Pravda, z flashky se přihlásit nelze. Na druhou stranu pokud se přihlašujete heslem, potřebuju jenom to heslo. Klíč chráněný (kvalitní) passphrase je de facto dvoufaktorová autentizace. Když se vám podaří odkoukat zadávání passphrase, není vám to bez klíče k ničemu. Když se dostanete ke klíči, není vám bez passphrase taky k ničemu. Pravda, můžete "čekat, až ji rozlousknete". Tak můžete tu passphrase odkázat svým praprapravnukům.
platí jak v případě klíče tak v případě hesla
Tak jsem to myslel.
known_hosts
ten si šifrujete nebo si před každým přihlášením kontrolujete integritu? Pokud ani jedno, je IMHO do jisté míry jedno, jestli se přihlašujete heslem nebo klíčem, nebo jestli si soubor se soukromým klíčem šifrujete.
Ono se v tomhle vlákně smíchalo víc věcí dohromady. Já jsem chtěl poukázat na to, že known_hosts
je možným vektorem útoku. Přitom ho na rozdíl od klíče člověk mít musí (no vlastně nemusí, ale takových asi nebude mnoho - viz podnadpis - "První akční paranoidní postup..." - proč tam, hrome, nejsou kotvy?).
known_hosts
se zneužije trochu hůř než klíč, ale zatímco klíč si asi většinou člověk zašifruje (ssh-keygen
k tomu ostatně by default nabádá) aspoň blbým šestiznakovým heslem, o known_hosts
se musí postarat sám.
A když tady Šangala na základě svých praktických zkušeností (jak alespoň naznačuje) tvrdí, že problémem klíče bývá to, že se buď nešifruje, nebo se kdekomu povaluje v rozšifrované podobě v jeho ssh agentovi (což je vektor útoku, který "heslaři" nemusí řešit), tak mě zajímalo, jak dle jeho praktických zkušeností "heslaři" nakládají s known_hosts
, protože k jeho zneužití přispívá úplně stejný druh chování (nezamčené terminály atp.)
Nebavíme se o pozměnění (pak by ale ani šifrování known_hosts stejně nepomohlo)
Bavíme se o tom samém? Vy umíte pozměnit soubor zašifrovaný symetrickou šifrou, aby při rozšifrování byly v tom souboru data, která tam potřebujete podvrhnout?
Bavíme se o tom samém? Vy umíte pozměnit soubor zašifrovaný symetrickou šifrou, aby při rozšifrování byly v tom souboru data, která tam potřebujete podvrhnout?Pokud můžu pozměnit known_hosts, pravděpodobně budu schopen pozměnit i login shell, binárku ssh a další věci.
known_hosts
na flešce spolu s klíčem (a vy budete mít přístup jen k té flešce). Nebo pokud nenarazíte třeba na to, že /home
je mountován jako noexec a není otevřený žádný terminál s nalogovaným rootem. Pak už asi bude hodně záležet na tom, kolik máte času k útoku a co všechno stihnete (jestli je třeba čas na reboot nebo rovnou na demontáž hdd). Tady by mohl být rozdíl mezi šifrovaným a nešifrovaným known_hosts
docela zásadní.
Zásadní rozdíl je v tom, že systém je „ohrožený“ ze všech míst, kde jsou klíče uložené.Systém je ohrožený ze všech míst, odkud se k němu přihlašujete. Pokud je v okamžiku přihlašování terminál v moci útočníka, útočník může provést cokoliv. Na tom nic nezměníte způsobem autentikace – heslem je to stejné jako klíčem, u jiných metod (HW tokeny, systémy s jednorázovými hesly) to může být lepší v tom, že útočník nemá možnost pořídit si vlastní session, ale to je jen malé vylepšení, protože v rámci té vaši může beztak napáchat dost škody. Výhoda klíčů se projeví, pokud útočník nemá v moci terminál, ale útočí na samotný server. Běžná hesla jsou proti útokům hrubou silou mnohem méně odolná než běžné klíče.
Permission denied (publickey)
začne generovat a zkoušet klíče.
útočník nemá možnost pořídit si vlastní session, ale to je jen malé vylepšení, protože v rámci té vaši může beztak napáchat dost škody
Například přidat klíč do /root/.ssh/authorized_keys
a následně si odkudkoli otevřít vlastní session.
To je prakticky o kus složitější - dostat se do konkrétního terminálu přihlášeného uživatele a vzdáleněStačí se dostat na účet toho uživatele a nastavit si
$DISPLAY
.
Zásadní rozdíl je v tom, že systém je „ohrožený“ ze všech míst, kde jsou klíče uložené.To je při přihlašování hesle taky.
Snažím se ukázat jen na to, že tvrzení: „přihlašování klíčem je bezpečnější než heslem“, není obecně pravdivéTo je pravda, tady nejsme vepři. Diskuze začala kolem direktivy PermitRootLogin, o klíčích jsem nikde nemluvil.
a to mi zpřístupní klíče v ssh-aggent?Ne, to ti umožní odposlechnout zadávané heslo (v emulátoru terminálu v X).
~/odposlechy/brmlab/12-08-15> tsocks ssh jenda@nsn.nbu.cz Linux nsn 3.2.0-2-486 #1 Fri Jun 1 18:07:23 UTC 2012 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Thu Aug 16 17:03:11 2012 from ee.str.mvcr.cz jenda@nsn:~$ export XAUTHORITY=/home/jenda/.Xauthority jenda@nsn:~$ export DISPLAY=":0" jenda@nsn:~$ xlsclients -l ... Window 0x3a00024: Machine: nsn Name: jenda@nsn: ~ Icon Name: jenda@nsn: ~ Command: xterm Instance/Class: xterm/XTerm ... jenda@nsn:~$ xev -id 0x3a00024 ... KeyRelease event, serial 21, synthetic NO, window 0x3a00024, root 0x156, subw 0x0, time 3120809139, (437,604), root:(835,952), state 0x0, keycode 39 (keysym 0x73, s), same_screen YES, XLookupString gives 1 bytes: (73) "s" XFilterEvent returns: False KeyRelease event, serial 21, synthetic NO, window 0x3a00024, root 0x156, subw 0x0, time 3120809140, (437,604), root:(835,952), state 0x0, keycode 30 (keysym 0x75, u), same_screen YES, XLookupString gives 1 bytes: (75) "u" XFilterEvent returns: False
Snažím se ukázat jen na to, že tvrzení: „přihlašování klíčem je bezpečnější než heslem“, není obecně pravdivé, zneužít klíč může být výrazně snadnější než zneužít hesloTo je otazka. Ja osobne bych mene veril heslu, nebot se da mnohem snaze pasivne ziskat (odkoukani napr. bezpecnostni nebo skrytou kamerou, ci analyza zvuku a tempa uderu do klavesnice) Oproti tomu ziskat soubor s klicem (bez ohledu na to, zda je ci neni chranen passphrasi) muze byt o dost komplikovanejsi - je treba napr. nahackovat se do pocitace nebo ziskat fyzicky jeho harddisk.
Zákazem přihlášení na roota odstíním spoustu automatůOpravdu?
Aug 14 10:56:49 deka sshd[25821]: ROOT LOGIN REFUSED FROM 89.177.89.230 Aug 14 10:56:49 deka sshd[25821]: ROOT LOGIN REFUSED FROM 89.177.89.230 [preauth] Aug 14 10:56:50 deka sshd[25821]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=89.177.89.230 user=root Aug 14 10:56:52 deka sshd[25821]: Failed password for root from 89.177.89.230 port 33257 ssh2 Aug 14 10:56:57 deka sshd[25821]: Failed password for root from 89.177.89.230 port 33257 ssh2 Aug 14 10:56:57 deka sshd[25821]: Connection closed by 89.177.89.230 [preauth] Aug 14 10:56:57 deka sshd[25821]: PAM 1 more authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=89.177.89.230 user=root
Zákazem přihlášení na roota odstíním spoustu automatů, stejně tak přesunutím SSH na jiný port … alespoň se mi v logu nehromadí bordel od botů, kteří hromadně zkoušejí vše v okolí
Když vám vadí hlášky v logu, tak si jejich logování zakažte, z hlediska bezpečnosti si tím pomůžete asi tak stejně jako těmi obskurnostmi.
stejně tak omezením přihlášení z určitého rozsahu IP
Tím omezím i sebe.
A samozřejmě se non-root uživatele, přes kterého se mohu sučknout dál, snažím chránit přinejmenším stejně (dlouhým klíčem, dlouhou náhodnou passfrází).
No a pak se právě nabízí otázka, proč vlastně otravovat s druhým přihlašováním, když to vlastně nic nepřináší.
když to vlastně nic nepřináší…a naopak to znemožní jednoduché scp/rsync nějakého souboru. O zálohování rsyncem/rdiff-backupem nemluvě.
Je trochu rozdíl mezi tím, jestli pokus bota selže hned v počátku, nebo tím, že ho ignoruji a nechci vidět. ... zbytek je věc osobních preferencí a pohodlí.Když vám vadí hlášky v logu, tak si jejich logování zakažte, z hlediska bezpečnosti si tím pomůžete asi tak stejně jako těmi obskurnostmi.
Je trochu rozdíl mezi tím, jestli pokus bota selže hned v počátku, nebo tím, že ho ignoruji a nechci vidět.wut?
zbytek je věc osobních preferencí a pohodlíTohle vypadá spíš na OCD nebo masochismus (proč používat méně pohodlně řešení jenom tak?).
... zbytek je věc osobních preferencí a pohodlí.
Ano fail2ban, pripadne jeste v kombinaci s fw a povolenim jen vybranych adres, je asi tak 100x pohodlnejsi, nez ruzne nestandardni porty, port knocking a jine nesmysly.
Když vám vadí hlášky v logu, tak si jejich logování zakažte,No, on nevadi ani ten bordel v logu, jako to vytizeni CPU. I kdyz mam zakazane prihlasovani heslem a utocnik nic jineho nezkousi, tak samotne navazani sifrovaneho spojeni docela dost stoji. Bezny scan mi na desktopu udela i 30 % vytizeni. Rozumne reseni je napr. per source IP rate limiting na prichozi SSH spojeni (pomoci netfilteru).
password123
, tak může být i 11znakové :).
nbusr123
Uživatelia uzavretých systémov si možno neuvedomuju riziká spojené s nechránením systému pre napadnutím škodlivým kódom.
Najlepšie sú hlášky :
Niekedy to vyzerá, že bežný užívateľia nechcú si udržať plnú kontrolu na systémom. Vôbec ich nezaujíma, že ich systém môže byť zneužitý.
Možno z Honeynet-u bude forma bariery ako v anime Ghost in The Shell.
Uživatelia uzavretých systémov
Používať obmedzené konto, je to zbytočné. Mne sa nechce prepínať kvôli inštalácii nejakého programu.Pokud uvažujeme běžný domácí desktop (což asi uvažujeme, podle těch hlášek), tak jediný rozdíl je v tom, že útočník bude muset patchnout
sudo
a chvilku počkat. No jéje.
Niekedy to vyzerá, že bežný užívateľia nechcú si udržať plnú kontrolu na systémom.Ono taky udržet si ji je zatraceně těžké (čti: na mém desktopu může mít nelegálního roota až moc lidí - popisoval jsem to… tu).
(80,25 a jeden nestandardni)Ne každý provozuje na serveru jenom HTTP a SMTP, že.
Na tom nestandardnim pouzivam openvpn, na kterou se pripojim a teprve odsud se dostanu na SSH. Takze jsem chraneny VPNkou, kde bez privatniho klice ani bž, a pak jeste by musel prekonat rootovske heslo na ssh, nicmene uz v te chvili bych vedel ze mi nekdo zlomil privatni klic, pac by se mi VPNka odhlasovala a prihlasovala - mlatilo by se utocnikovo spojeni a legitimni spojeni a o tom bych se dozvedel.To uvažuješ remote root exploit na sshd a neuvažuješ root exploit na ovpn?
tls-auth
, tak to rozdíl je. To spíš mezi vpn s tls-auth
a portknockingem není moc rozdíl (z útočníkova pohledu - v obou případech nevidí nic).
Premyslel jsem i nad tim portknockingem. Kde mam jistotu, ze portknocking nebude odposlechnut nekym na lince a nepouzit znovu pro odemceni pristupu k nejake sluzbe?
Vyřešeno. Navíc, jak píšu výše, tohle se dá řešit pomocí tls-auth
přímo v openVPN.
K výhodám bych ještě přiřadil, že VPN může jet přes UDP, což ztěžuje DOS. Nevýhodou naopak je, že když si člověk nechá expirovat serverový klíč, bude muset k mašině. Tohle chování možná lze nějakou volbou eliminovat, ale nevím, nestudoval jsem.
treba tak ze si ho omylem zafirewalluju a jsem ve stejne kasiTohle se dá řešit tak, že si dáš do
at
příkaz na reset původních pravidel (třeba po minutě) a kdyby to náhodou nevyšlo, vrátíš se k nim. (ale uznávám, že po bitvě je každý generál )