Canonical oznámil vydání Zephyr 26.04 LTS. Jedná se o komerční distribuci operačního systému pro mikrokontroléry Zephyr (Wikipedie) s podporou až 15 let.
Gravity Linux je linuxová distribuce určená pro Apple Silicon s čipy M4 a novějšími. Vydána byla alfa verze pro M4 Mac mini. Gravity Linux je fork Asahi Linuxu.
Hister je osobní soukromý vyhledávač, který lze provozovat na vlastním stroji. Umí prohledávat lokální soubory, importovat historii a záložky z webových prohlížečů, procházet vybrané weby a pomocí rozšíření pro Firefox a Chrome indexovat obsah právě navštívených stránek. Nad vytvořeným indexem pak nabízí vyhledávání prostřednictvím webového rozhraní, příkazové řádky a díky podpoře MCP i nástrojům umělé inteligence. Tento
… více »Ministerstvo dopravy uznalo prozatímní schválení asistenčního systému Tesla FSD Supervised vydané nizozemským schvalovacím orgánem RDW. Připojilo se tak k Nizozemsku a dalším pěti evropským státům. Systém je díky tomuto rozhodnutí možné používat za podmínek prozatímního schválení také na území České republiky. Tesla FSD Supervised je asistenčním systémem úrovně 2 podle klasifikace SAE (částečná automatizace řízení). Řidič se
… více »Někteří zákazníci O2 mohou aktuálně zaznamenat zhoršenou dostupnost internetových služeb. Na odstranění potíží se pracuje [Facebook].
PyPy (Wikipedie), tj. implementace Pythonu v RPythonu, alternativa CPythonu v C, byla vydána v nové major verzi 8.0.0. Podporuje Python 2.7, 3.11 a 3.12.
V jádře Linux byly nalezeny a v upstremu ve verzích 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50 a 7.2.4 již opraveny 4 kritické zranitelnosti umožňující eskalaci práv: DirtyAH6 (CVE-2026-80844), TUNderflow (CVE-2026-81000), PPPoEject (CVE-2026-68121) a DiagSpill (CVE-2026-74469).
Německá policie a celníci zneužívají ke čtení zpráv komunikačních aplikacích WhatsApp, Signal, Telegram nebo Threema velice jednoduchý trik, který nevyžaduje prolomení šifrování, spear phishing, odposlech SMS či jinou technicky náročnou metodu. Příslušníkům státního aparátu pouze stačí získat krátký přístup k odemčenému telefonu a prostřednictvím QR kódu propojit účet s oficiální desktopovou nebo webovou aplikací v policejním
… více »Počítačová hra Factorio (Wikipedie) nově běží nativně na ARM64 Linuxu a headsetu Steam Frame.
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...