Asterinas (GitHub) je v Rustu napsané jádro operačního systému poskytující s jádrem Linux kompatibilní ABI. Vydána byla verze 0.18.0. První distribucí postavenou nad jádrem Asterinas je Asterinas NixOS. Nejedná se o oficiální projekt NixOS a nemá nic společného s NixOS Foundation.
Podrobně byla rozebrána kritická zranitelnost v nf_tables (CVE-2026-23111). Další lokální eskalace práv na Linuxu. V upstreamu byla zranitelnost již v únoru opravena. Ve zdrojovém kódu stačilo odstranit 1 vykřičník.
Evropská komise (EK) nařídila americké společnosti Meta, že musí znovu umožnit bezplatný přístup konkurenčním obecně zaměřeným asistentům umělé inteligence (AI) k WhatsAppu a tento přístup musí zachovat až do ukončení antimonopolního šetření. Opatření je dočasné a má zabránit vážnému a nevratnému poškození konkurence na rychle rostoucím trhu s obecnými AI asistenty. Meta uvedla, že se proti rozhodnutí odvolá.
Společnost Anthropic představila AI modely Claude Fable 5 a Claude Mythos 5. Claude Fable 5 je první model třídy Mythos určený pro běžné použití.
Byla vydána nová stabilní verze 3.24.0, tj. první z nové řady 3.24, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.
Na čem pracují vývojáři v Rustu napsaného mikrokernelového unixového operačního systému Redox OS (Wikipedie)? Byl publikován přehled vývoje za květen. Vypíchnout lze nový scheduler EEVDF nebo port desktopového prostředí Xfce na Redox OS.
Upozornění pro uživatele Asahi Linuxu: Neaktualizujte macOS na verzi 27 Golden Gate! Apple změnil detekci spouštěcích oddílů. Po aktualizaci oddíl s Asahi Linuxem nevidí. Snad je to jenom chyba.
Na webu konference Den IPv6, která se konala 4. června v Národní technické knihovně v pražských Dejvicích, jsou nyní k dispozici všechny prezentace (v PDF) a jejich videozáznamy. Organizátory konference byly i letos sdružení CESNET, CZ.NIC a NIX.CZ.
Byla vydána nová verze 9.1.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Vypíchnout lze vylepšené vyhledávání nebo podporu Pixel Motion Photos. Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.
Přihlaste svou přednášku na další ročník konference LinuxDays, který proběhne 3. a 4. října na FIT ČVUT v pražských Dejvicích. Příjem témat poběží do konce prázdnin, pak proběhne veřejné hlasování a následně sestavení programu.
Mám obývací pokoj oknem "prosvícen" wifi signálem jednoho místního providera. Koukal jsem se jak pokročila technologie louskání WEPu, a překvapeně zjistil že slabé inicializační vektory jsou minulostí, že aircrack-ng používá jiný, mnohem účinnější útok. Stačí nasbírat dost inicializačních vektorů, spustit na ně aircrack, a máte WEP heslo. Podrobných návodů je na netu dost. Jenže co s takovým heslem? Krást se nemá, a to ani internetová konektivita.
Spokojím se proto s pasivním monitorováním, a dekódováním šifrovaných packetů pomocí airdecap-ng. Po mírném opatchování umí fungovat i jako filtr, číst pcap file ze standardního vstupu, a posílat dekódované packety na standardní výstup. Na vstupu i výstupu může být tcpdump, nebo něco jiného. Asi jsem blízko antény která je na straně gatewaye, protože packety které vidím chodí vždy z internetu směrem k uživatelům. Samotný tcpdump či wireshark je docela nepraktický, proto jsem spáchal jednoduchý skript, který packety mění na něco použitelného, tj soubory. Co skript dělá:
- rekonstruuje TCP streamy, a zpracovává "HTTP 200 OK" odpovědi.
- prázdné packety a SYN/FIN flagy pro jednoduchost zcela ignoruje, spoléhá se na timeouty.
- connection: keep-alive, a transfer-encoding: chunked jsou podporovány.
- content-encoding: gzip produkuje .gz soubory, takže se snadno prohlížejí.
- soubory rozhazuje do adresářů podle cílové IP adresy, čísluje a pojmenovává podle zdrojové IP. Škoda že nejde zjisit původní URL, program proto použije alespoň předchozí CNAMEs k dané IP.
- příponu nastavuje podle content-type hlavičky.
A jak to vypadá? Normálně, co by kdo taky mohl čekat.. updaty antivirů, google, seznam, centrum, idos, dpmb, atlas.cz, O2, vodafone, motobazar, libimseti, baculky.cz, fotbal.sport.cz, youtube, super.cz...
$ cat decouder.py
#! /usr/bin/python
from struct import unpack
from string import join, split, index
import sys, re, os
cn = {}
ns = {}
def ip(a):
n = ns.get(a)
if not n: return join([str(ord(i)) for i in a], '.')
return cn.get(n) or n # prefer CNAMEs
def pcap(read):
if unpack('IH14xI', read(24)) != (0xA1B2C3D4, 2, 1):
print 'not an ethernet pcap file'
sys.exit(1)
flow = {}; flow_lim = 16
while 1:
try:
tm, l = unpack('I4xI4x', read(16))
pkt = read(l)
dm, sm, t, i, l, p, chk, s, d = unpack(
'!6s6sHBxH5xBH4s4s', pkt[:34])
except: break # eof
if t != 0x800 or i & 0xf0 != 0x40: continue # not ip
pkt = pkt[14 + 4*(i & 0xf) : 14 + l]
if p == 0x6: # tcp
sp, dp, seq, l, f, chk = unpack(
'!HHI4xBB2xH', pkt[:18])
pkt = pkt[4*(l >> 4):]
if not pkt: continue
if len(flow) > flow_lim: # collect garbage
flush(flow, tm - 180)
flow_lim = len(flow) * 2
data = flow.setdefault((s, d, sp, dp), [tm, '', seq])
if data[0] < tm - 180: # reusing old
tcp(s, d, data[1])
data[1] = ''
elif data[2] != seq: continue
data[0] = tm; data[1] += pkt
data[2] = (seq + len(pkt)) & 0xffffffff
if p == 0x11: # udp
sp, dp, l, chk = unpack('!HHHH', pkt[:8])
if sp == 53: dns(pkt[8:l])
flush(flow, 1e99)
def flush(flow, tm):
n = 0
l = flow.items()
l.sort(key = lambda x: x[1][0]) # in tm order
for k, data in l:
if data[0] >= tm: break
tcp(k[0], k[1], data[1])
del flow[k]; n += 1
def dns(pkt):
f, q, r = unpack('!2x3H4x', pkt[:12]); i = 12
if f & 0xfa0f != 0x8000: return
def name(i, pkt = pkt):
s = ''; si = None; c = 0
while 1:
n = ord(pkt[i]); i += 1
if n >= 0xc0:
c += 1
if not si: si = i + 1
elif c > 10: return # prevent dos
i = (n - 0xc0) << 8 | ord(pkt[i])
continue
if n == 0: return s[:-1], si or i
s += pkt[i:i + n] +'.'; i += n
for p in range(q): # skip queries
i = name(i)[1] + 4
for p in range(r): # response
s, i = name(i)
t, c, n = unpack('!HH4xH', pkt[i:i + 10])
if t == 1 and c == 1 and n == 4: # A
ns[pkt[i + 10:i + 14]] = s
if t == 5 and c == 1: # CNAME
cn[name(i + 10)[0]] = s
i += 10 + n
dirs = {}
def rx(regex, s, n = 1):
m = re.search(regex, s)
return m and m.group(n)
def tcp(s, d, doc):
while doc[:5] == 'HTTP/':
try: l, doc = split(doc, '\r\n', 1)
except: return
ok = split(l)[1]
ct = ce = sz = None
while 1: # mime cruft
try: l, doc = split(doc, '\r\n', 1)
except: return
if not l: break
ct = ct or rx('^Content-Type: (\S+/)?([^; ]+)', l, 2)
ce = ce or rx('^Content-Encoding: (\S+)', l)
sz = sz or rx('^Transfer-Encoding: (\S+)', l) \
or rx('^Content-Length: (\d+)', l)
if doc[:5] == 'HTTP/': continue # IIS/6.0 @#%$$&!!
if ct in ('x-javascript', 'javascript'): ct = 'js'
elif not ct: ct = 'unknown'
if ce == 'gzip': ct += '.gz'
if sz == 'chunked': # unchunk
out = ''
while 1:
try: l, doc = split(doc, '\r\n', 1); l = int(l, 16)
except: return
out += doc[:l]
doc = doc[l + 2:]
if l == 0: break
else:
try: sz = int(sz)
except: sz = len(doc)
if len(doc) < sz: return
out = doc[:sz]
doc = doc[sz:]
if ok != '200' or len(out) < 1024: continue
dir = 'HTTP-'+ ip(d)
n = dirs[dir] = dirs.get(dir, 0) + 1
if n == 1: os.mkdir(dir)
n = '%s/%04d-%s.%s' % (dir, n, ip(s), ct)
open(n, 'w').write(out)
print n, len(out)
pcap(sys.stdin.read)
Tiskni
Sdílej:
Takže BTW z prvního komentáře zůstává.
Ohledně předmětu mého komentáře. Pokud by četl obsah té komunikace (a to i kdyby byla nešifrovaná), tak to legální není.
Nikdo nesmí porušit listovní tajemství ani tajemství jiných písemností a záznamů, ať již uchovávaných v soukromí, nebo zasílaných poštou a nebo jiným způsobem, s výjimkou případů a způsobem, které stanoví zákon. Stejně se zaručuje tajemství zpráv podávaných telefonem, telegrafem nebo jiným podobným zařízením.
elektronická pošta je poštou a i písemnosti v elektronické podobě jsou písemnostmi (ve smyslu § 40 občanského zákoníku) a i pro ně platí obdobná pravidla jako pro ostatní písemnosti
Mně to s tím zářením připomíná, jakoby na sebe sousedi hulákali čínsky a já se pod pohrůžkou zákona nesměl naučit čínsky, natož je poslouchat.
S tou čínštinou je to špatný příklad. Mnohem přilehavější je ten s tou dopisní obálkou.Vzhledem k jisté podobnosti mezi šířením zvukových a rádiových vln a (ne)srozumitelnosti přenášené informace mi připadá lepší ten můj. Chápu, že podle zákona je to jinak. Tímto postojem rozhodně neříkám, že fandím odposlechům sousedů... jen se mi víc líbí, když to v Internetu/sítích funguje více jako svět za dávných dob (tj. žádná státní regulace/kontrola)
Ovšem oni na sebe asi nekřičí čínsky za účelem znemožnění odposlechu, ale protože jsou to dva Číňani.Špatný příklad. Já osobně ve škole používám španělštinu pro utajení obsahu konverzace s kamarádem
Mám na své okolí posílat policii, když mě odposlouchává?
Rozdíl je mezi vnikat někam a pasivně poslouchat. Rádiové vlny jsou plně pasivní odposlech. Navíc - proč oni smí a já ne: http://www.zive.cz/h/Bleskovky/AR.asp?ARI=133851 ?
Rozdíl je mezi vnikat někam a pasivně poslouchat. Rádiové vlny jsou plně pasivní odposlech.Pokud nelámete šifrovací klíče. A i kdyby komunikace byla nešifrovaná, vy při tom odposlechu moc pasivní nejste. Když narazíte na obsazený kanál, měl byste z něj uhnout, ne poslouchat. Když uslyšíte ve škole, že se někdo baví tajně španělsky, zvolíte s kamarádem taky jiný jazyk
Stejně, ať je to poslech aktivní nebo pasivní, zákonný či nezákonný, je to nemorální. Dál není co řešit.
Navíc - proč oni smí a já ne.Oni toho smí, co vy ne…
Jen si tak říkám, jestli je v provozu ta anténa na bezdrát (BreezeNet) na střeše služebny, na kterou koukám z okna
airodump-ng ukazuje RXQ 80-100%, bez jakékoliv antény, jen na běžnou PCMCIA kartu...