Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Pokud útočníkovi stačí způsobit odepření služby, má to celkem jednoduché. GSM je rádiová síť, takže z principu lze zarušit. Levné rušičky lze objednat z Číny, jejich stavba ze šuplíkových součástek také není příliš složitá. Nevýhodou je snadné odhalení.
Mnohem zajímavější je způsobení DoS odesláním malého množství „vhodných“ dat někam do sítě. Softwarová stránka implementace GSM je všelijaká a když spustíte na mobil nějaký běžný fuzzer (věc, která zkouší posílat různými způsoby rozbitá data a čeká, jestli na druhé straně spadne parser), najdete spoustu chyb. Přečtěte si například o projektu SMS-o-death (záznam přednášky), který zjistil, že spousta mobilů lze zablokovat SMSkou obsahující binární balast.
Je zřejmé, že na bezdrátovém principu není proto vhodné stavět kritické technologie, jako například zabezpečení budov posílající SMS notifikaci a volající policii přes GSM. Leč mnozí tak činí.
Dále se již budeme věnovat bezpečnosti přenášených dat.
Po telefonu si lidé říkají všelijaké citlivé informace. Bohužel u většiny dnes provozovaných sítí tečou někde u provozovatele data nešifrovaně. U GSM je šifrováno spojení mezi mobilem a BTS, ale infrastruktuře operátora jsou již data dostupná. Odposlechnout je může neposlušný zaměstnanec nebo složka státní moci (samozřejmě pouze na soudní příkaz ). Již z tohoto důvodu bychom si měli dávat pozor, co telefonu svěřujeme.
Pokud útočník nemá přístup do infrastruktury operátora a přesto by chtěl poslouchat, musí nějakým způsobem obejít či zlomit šifru, kterou je komunikace vzduchem chráněna.
Jedním z prvních útoků, které se objevily, byl tzv. IMSI catcher. Využívá toho, že mobilní telefon kryptograficky neověřuje identitu sítě, ke které se přihlašuje. Každý operátor v každé zemi má unikátní ID skládající se z MCC (Mobile Country Code, pro ČR 230) a MNC (Mobile Network Code, v ČR 01-03 pro známou trojku a 98 pro jednoho méně známého) a tyto informace jsou všemi BTS pravidelně ohlašovány do sítě. Mobil si ze SIM karty zjistí, kterému operátorovi patří, a k jeho nejsilnější BTS se přihlásí. Pokud žádnou „rodinnou“ BTS nenajde (typicky v zahraničí), zkusí si domluvit roaming.
Co se ale stane, pokud si spustíme vlastní BTS a nastavíme dvojici MCC a MNC na tu, kterou už nějaký operátor používá? Pokud zařídíme, aby oběť našeho útoku měla dostatečně silný signál (například směrovou anténou), ochotně se její mobil přihlásí na naši BTS. A protože šifrování přenosu iniciuje BTS, můžeme mobilu říct, aby šifrování vypnul, a pak si hovor v klidu poslechnout.
Problémy jsou dva: za prvé nefungují příchozí hovory a za druhé lze takový útok poměrně snadno odhalit. Překvapující je, že to nikdo nedělá. Totiž – indicií je několik:
Existuje projekt IMSI catcher catcher, který se snaží podle těchto indicií útok odhalit. Shodou okolnosti je implementován nad telefony Osmocom.
Zařízení vlastní například různé složky státní moci (zajímavý dodavatel). Ostatně i ta slavná Agáta je „jenom“ takový naspeedovaný IMSI catcher.
Opensource IMSI catcher se dá postavit nad OpenBTS. Je k tomu potřeba USRP a spousta času.
Především hrozba odhalení vedla k vývoji dalších typů útoků. Pro jejich pochopení ale budeme muset tušit něco málo o symetrických šifrách.
Symetrická šifra je funkce, která vezme nějaký tajný klíč a data, která chceme zašifrovat, vyrobí z toho nějaký nečitelný blob a pošle to. Na druhé straně se vezme ten stejný klíč a blob se jím dešifruje. Příklady symetrických šifer jsou AES, Blowfish, DES, A5/1, RC-4.
Některé symetrické šifry jsou blokové. Fungují tak, že vezmou blok dat (řádově stovky bitů) a klíč a vyplivnou zašifrovaný blok dat. Blokové šifry jsou například AES, Blowfish, DES.
Jiné symetrické šifry jsou proudové. Pomocí klíče se inicializuje generátor pseudonáhodných čísel a tímto generátorem se vygeneruje potřebné množství (proud) pseudonáhodných dat, kterým se říká keystream. Keystream se potom zXORuje s daty, která chceme zašifrovat. Příjemce si také inicializuje svůj pseudonáhodný generátor, nechá ho vygenerovat keystream a zXORuje s ním přijatá data. Vypadne na něj původní text. Proudové šifry (stream ciphers) jsou například RC-4 nebo A5/1 používaná v GSM.
Generátor keystreamu v A5/1 jsou tři posuvné registry, do kterých je na začátku nasypán klíč, a pak se začnou různě posouvat a míchat, výstupy z nich se vzájemně XORují a někudy z toho začnou padat pseudonáhodná data, keystream. Můžete se podívat na povedenou animaci principu na YouTube.
Šifra má tedy cosi jako vnitřní stav definovaný hodnotami proměnných v generátoru. Když ho získáte, můžete ho nasypat do svého generátoru, vygenerovat si stejný keystream a dešifrovat přenášenou zprávu. A5/1 lze navíc „backclockovat“ – s o něco vyššími nároky na výkon lze obrátit směr, kterým se posouvají bity v posuvných registrech, a po chvíli počítání získat i počáteční stav šifry a z něj klíč. Tedy zjištěním vnitřního stavu v jakémkoli okamžiku používání šifry jste schopni dešifrovat celou komunikaci.
Můžete si spočítat tabulku:
Vnitřní stav | Keystream |
---|---|
0x0000000000000000 | 0xabcdef12345678 |
0x0000000000000001 | 0x54632221afed03 |
0x0000000000000002 | 0x456dcd562b980e |
Když uvidíte ve vzduchu nějaká data a dokážete z nich extrahovat keystream, podíváte se do tabulky, zjistíte vnitřní stav šifry a máte vyhráno. Bohužel taková tabulka je poněkud velká. Triviálně 264 možných stavů × 64 bitů keystreamu na stav, přičemž se ukazuje, že keyspace je jenom nějakých 261, ale i tak je to v řádech EB (exabajt, tedy milion terabajtů).
Naštěstí lze použít time-memory tradeoff. Pomocí jistého triku si spočítáte menší tabulku, která bude obsahovat pouze vybrané vnitřní stavy šifry, ale zároveň bude obsahovat informace, které vám umožní chybějící data rychle dopočítat v okamžiku, kdy je potřebujete.
Velmi hrubě řečeno to funguje tak, že si zvolíte nějaký počáteční bod, použijete ho jako tajný stav pro A5/1 a vyrobíte keystream. Ten vhodně upravíte a použijete jako tajný stav pro další A5/1 a tak dále, až se dostanete do distinguished pointu. Ten může být definován třeba tak, že na konci je určitý počet nul. Počáteční bod a distinguished point uložíte do tabulky. Opakujete tak dlouho, až vám dojde místo na disku.
Počáteční tajný stav | Distinguished point (po mnoha iteracích) |
---|---|
0x0000000000000000 | 0xcd547853000000 |
0x0000000000000001 | 0x4512ebca000000 |
0x0000000000000002 | 0x3249bdcc000000 |
Když potom získáte nějaký keystream, použijete ho jako tajný stav a počítáte tak dlouho, až se dostanete do distinguished pointu. Ten si najdete v tabulce, podíváte se, jaký počáteční tajný stav na něj vedl, a dopočítáte zbytek řetězu. Víte, že článek řetězu těsně před vaším keystreamem je tajný stav, který vás zajímá.
Pomocí dalších optimalizací (nad rámec článku a znalostí autora) se dá zmenšit velikost tabulek zabráněním kolizí (merge), kdy máte nějaká data zbytečně víckrát. Hezky je to popsané v přednášce GSM: SRSLY? Podívejte se také na projektovou wiki. Útok momentálně implementuje projekt Kraken.
Na čtyřjádrovém Xeonu s 8 GiB RAM, grafikou Radeon HD 5900 a 2TB polem z rychlých 15kRPM SCSI disků lze cracknout A5/1 v řádu minut. Se SSD disky a čtyřmi grafikami se dá dostat na sekundy.
Když přenášíte nějaká data vzduchem a přijímač není v ideálních podmínkách, například je mezi železobetonovými domy, vlny se různě lámou a odrážejí, v některých místech se sečtou a v některých vyruší, na některých frekvencích se objevuje rušení atd. Proto je výhodné používat channel hopping – při přenosu se velmi rychle mění frekvence, na které se vysílá, a doufá se, že i když jeden kanál bude zarušený, ostatní budou fungovat dobře a dojdou alespoň nějaká data (z těch potom lze pomocí rozličných error correction a parit dopočítat zbytek). Případnému útočníkovi, který se snaží komunikaci odposlechnout, tohle ale může způsobit komplikace, protože se musí přelaďovat přesně stejně jako vysílač.
Můžeme se zaposlouchat, co se kolem nás ve vzduchu děje. Naladíme se na BEACON kanál nějaké blízké BTS a koukáme:
BTS: Jsem nejmenovaný operátor v České republice! BTS: Jsem nejmenovaný operátor v České republice! BTS: Jsem nejmenovaný operátor v České republice! BTS: Telefon s tmsi 123456 nechť skočí na kanál 8, timeslot 2! BTS: Jsem nejmenovaný operátor v České republice! BTS: Jsem nejmenovaný operátor v České republice!
TMSI (Temporary Mobile Subscriber Identity) je identifikátor, pod kterým mobil komunikuje s BTS.
Chtěli bychom slyšet i něco víc, tak se na výzvu k přeladění (v řeči GSM Immediate Assignment) naladíme na ohlášený kanál a poslechneme si ohlášený timeslot.
BTS: Telefone, mám tu pro tebe zprávu. Telefon: OK. BTS: Síla tvého signálu je 5 a tvoje time-advance je 1. Telefon: OK. BTS: Zapni šifrování. (dál už pokračuje nesrozumitelný balast)
Time advance je „náskok“, o který musí mobil začít vysílat dřív – když je daleko od BTS, než se k ní signál dostane, chvíli to trvá a netrefil by se tak přesně do timeslotu, který mu byl přidělen. Změření TA k různým okolním BTS a následná triangulace se dá použít k poměrně přesnému zaměření mobilu.
Tohle je ta komunikace, kterou jsme viděli ve Wiresharku v minulém článku.
K použití tabulek, které jsme si spočítali výše, potřebujeme keystream. Vzduchem ale létají jenom zašifrovaná data. Z principu šifry víme, že zašifrovaná data jsou keystream XOR nešifrovaná data. Z toho vyplývá, že nešifrovaná data XOR zašifrovaná data je keystream. Zašifrovaná data jsme právě odposlechli, nešifrovaná data zdánlivě nevíme, ale můžeme se pokusit je uhádnout. V GSM se totiž přenáší spousta vaty, například pokud BTS zrovna nemá co říct, pošle prázdný rámec (nazvěme ho NOP) vyplněný paddingem (0x2b, ASCII znak +). Předání SMS by mohlo vypadat třeba takhle:
NOP+++++++++++++++++++ Síla tvého signálu je 5 a tvoje time-advance je 1. NOP+++++++++++++++++++ Máš tu SMS s textem "uz kaprici pripluli?" NOP+++++++++++++++++++
ZXORujeme předpokládaný NOP s přijatými daty a výsledek se pokusíme cracknout. S trochou štěstí získáme klíč, kterým dešifrujeme zbytek zprávy.
Při hovoru se hopuje. Problém je v tom, že po kterých kanálech se bude skákat, se dohodne až po zapnutí šifrování. Takže:
Podle různých zdrojů je zřejmé, že několik implementací zmiňovaného útoku po světě existuje, některé klíčové části softwaru ovšem nejsou volně dostupné na Internetu. Kdyby tedy nějaký útočník chtěl provést pasivní odposlech, co by k tomu potřeboval?
Pro příjem pravděpodobně použije Osmocom telefony. Jsou malé, levné a mají nízkou spotřebu. Jeden stojí v přepočtu kolem 500 Kč a bude jich potřebovat 4-8. K nim budou potřeba sériové převodníky (4portový FTDI za 700 Kč), nějaký driver (Arduino, 350 Kč) a bižuterie kolem (USB hub, deska, krabička…).
Pro crackování je potřeba silný počítač. Pokud mu stačí offline crackovat SMS, bude potřebovat stroj s lepší grafickou kartou a 2TB storage. Pro real-time crackování je potřeba více grafických karet a 2TB SSD (kvůli co nejrychlejšímu seeku). To je asi nejdražší z celého zařízení, 2TB SSD může stát tak 40-50 tisíc korun.
Po softwarové stránce chybí:
Něco se dá vybagrovat z Airprobe, něco z OpenBTS a něco z aplikace mobile
pro Osmocom. Viz též Notes on sniffing a odkazovaný mail.
Jak vidíte, není to úplně triviální, ale s rozpočtem nižších stovek tisíc korun (méně, pokud jste nadšenci a nepočítáte svůj čas a/nebo pokud máte přístup na nějaký cluster, takže si nebudete muset počítač na provoz Krakena kupovat) se to dá.
Nejlepší by bylo upgradovat z 25 let starého GSM na nějaký modernější protokol. Bohužel ani 3G, ani UMTS na tom také nejsou s bezpečností zrovna růžově. Nejvíc by se mi osobně líbilo, kdyby operátor poskytoval IP konektivitu a já bych si přes to tuneloval šifrovaný VoIP (SIP přes TLS, RTP přes sRTP nebo ještě lépe zRTP), ale něčeho takového se asi hned tak nedočkám. Navíc po světě existují miliardy GSM telefonů a jejich výměna je v horizontu 5-10 let nereálná.
Šifra použitá v GSM je sice zlomená, i přes to lze ale útočníkovi její lámání všelijak znechutit. Útok, který jsme si popsali, využívá toho, že po síti létá spousta known-plaintextu v paddingu. Doporučení TS44.006 z roku 2008 definuje padding randomizovaný. I potom lze použít rámce, jejichž obsah lze tipnout (například rámec „System Infromation Type 5“ se silou signálu – telefon se nepohybuje zas tak rychle na to, aby to nešlo zjistit, nebo v krajním případě i zbruteforcovat), ale ty se posílají méně často a náročnost útoku tak velmi stoupá. Nicméně, ačkoli náhodný padding byl doporučen již v roce 2008, například v České republice ho zatím implementuje pouze jeden ze tří operátorů (nemůžu říct který).
Druhým kostlivcem ve skříni je málo časté překlíčování. Extrémem je jeden mobilní operátor, u kterého, pokud je mobil stále na stejné BTS, vydrží klíč několik dní. Překlíčování bohužel sežere trochu výpočetního výkonu a přenosové kapacity sítě, ale když se bude dělat dost často, útočníka opět znechutí.
Nicméně všechna tato opatření pouze posouvají náročnost útoku o několik řádů, z desítek a stovek tisíc do možná (desítek?) milionů korun. Jak se bude dostupný výpočetní výkon s časem zvyšovat, bude se crackování A5/1 stávat snazším a snazším. Proto je potřeba myslet na to, že s GSM nikdy neslyšíte hovor sami.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Je zřejmé, že na bezdrátovém principu není proto vhodné stavět kritické technologie, jako například zabezpečení budov posílající SMS notifikaci a volající policii přes GSM. Leč mnozí tak činí.Rejp do ecallu?
Nefungují mi příchozí hovory (to už prý mají nejnovější implementace IMSI catcherů nějak vyřešené, ale vůbec netuším, jak).Může mobil donutit BTS k nešifrování, nebo musí poslechnout inicializaci od BTS?
A5/1 lze navíc „backclockovat“ – s o něco vyššími nároky na výkon lze obrátit směr, kterým se posouvají bity v posuvných registrech, a po chvíli počítání získat i počáteční stav šifry a z něj klíč. Tedy zjištěním vnitřního stavu v jakémkoli okamžiku používání šifry jste schopni dešifrovat celou komunikaci.Hmm na tohle by to chtělo nedeterministický automat
Případnému útočníkovi, který se snaží komunikaci odposlechnout, tohle ale může způsobit komplikace, protože se musí přelaďovat přesně stejně jako vysílač. ... Buď nahrajeme celé pásmo a až crackneme klíč, doskáčeme si v tom zpětně. To vyžaduje drahé rádio, které dokáže celé pásmo zachytit.Jsem původně reagoval jenom na to první (je to moc daleko od sebe
K nim budou potřeba sériové převodníky (4portový FTDI za 700 Kč)ROFL převodník stojí víc než mobil? :-O
Nejlepší by bylo upgradovat z 25 let starého GSM na nějaký modernější protokol. Bohužel ani 3G, ani UMTS na tom také nejsou s bezpečností zrovna růžově. Nejvíc by se mi osobně líbilo, kdyby operátor poskytoval IP konektivitu a já bych si přes to tuneloval šifrovaný VoIP (SIP přes TLS, RTP přes sRTP nebo ještě lépe zRTP), ale něčeho takového se asi hned tak nedočkám.Šifrovaně můžeš tunelovat i přes současný kanál ne? Jenom místo zakomprimovanýho zvuku přímo do streamu z LFSR ještě zaXORuješ něčím tvrdším. BTW Co ten hack pomocí tý piko(mikro/nano?)BTS jak distribuoval zahraniční operátor?
BTW Co ten hack pomocí tý piko(mikro/nano?)BTS jak distribuoval zahraniční operátor?To bylo na 3G...
Rejp do ecallu?Ne ne, rejp do zabezpečovaček baráků.
Může mobil donutit BTS k nešifrování, nebo musí poslechnout inicializaci od BTS?Mobil poslouchá BTS. Ta pošle Ciphering Mode Command a když telefon nezačne šifrovat, tak mu IMHO přestane rozumět.
Hmm na tohle by to chtělo nedeterministický automatMy si vycrackovali nějaký rámec zprostředka, ale chtěli bychom znát celou komunikaci. A taky bychom chtěli poslouchat následující komunikace, které se inicializují stejným klíčem, ale napajpuje se tam jiný framenumber (to je něco jako IV, akorát hodně slabý, protože se mezi transakcemi inkrementuje jen o málo).. Není to backclockování zbytečný, když už vnitřní bity známe?
Hehe stejně nic se nevyrovná inicializací samejma nulama (nebo aspoň framecounter nulovej)Tak ony defaultně mají ty LFRS nuly… kdyby jich nebylo jenom 64 bitů, ale třeba 128, tak to není zas tak špatná šifra….
Jsem původně reagoval jenom na to první (je to moc daleko od sebeTy jo, DCS (GSM 1800) má v ČR snad 70 MHz v jednom směru? To znamená I/Q ADC s 70 Megasamply. Nebo radši rovnou dva (uplink i downlink).). To se týče přesnosti to by snad problém být neměl (jako naladění PLL, to není jako ladění elektronkovýho rádia, kde byly táhla na jádra cívek!! :-O
).
BTW jak velká prodleva je mezi výzvou o přeladění a samotným zahájením přenosu?Já měl za to, že je to 8 timeslotů, tedy 0,577 (?) ms. Ale vzhledem k tomu, že jak poslouchání, tak samotný GSM stack na Linuxu funguje přes USB, tedy milisekunda žádná míra, tak tam asi bude nějaký delay. Nebo se na začátku neposílá nic důležitého
Nebo několik přijímačů sestavujících celé pásmo.To by šlo, ještě to nikdo asi nezkoumal. Když už jsou k dispozici výkresy krabičky (jak to říct diplomaticky?), která dokáže chytat 8 kanálů. To by jednu BTS dát mohlo.
Jinak šířka kanálu je jen 200kHz? To není problém, snad i bluetooth má mnohem širší pásmo (dokonce na náročnější/vyšší frekvenci). BTW bluetooth umí hopping takyNo poraď, zatím nejlevnější SDR je rtl-sdr s šířkou 2 MHz (když se to hodně ohulí, tak i 3 MHz) a rozsahem 64-1700 MHz, tedy na GSM1800 by se to muselo nějak downmixovat. Navíc BTS mají v ČR kanály přidělené tak, aby se to navzájem nerušilo, takže tam jsou díry → potřebuješ těch SDR hodně..
ROFL převodník stojí víc než mobil? :-ONa ten převodník dáš 4 mobily, ale i tak je to pálka…
Šifrovaně můžeš tunelovat i přes současný kanál ne?Blbě. S rozumným effortem do toho GSM narveš tak pár set bitů za sekundu maximálně.
Jenom místo zakomprimovanýho zvuku přímo do streamu z LFSR ještě zaXORuješ něčím tvrdším.To nejde. Na BTS se totiž zvuk rozbalí do PCM, infrastrukturou operátora putuje jako PCM a na druhé BTS se zase zkomprimuje GSM/EFR/AMR/jaksetozrovnamenuje a pošle. Při nějakém chytrém exploitnutí vlastností toho vokodéru by se z toko pár kb/s vytřískat dalo (takže nějaký nejmizernější speex tím protáhneš), ale to CSD/GPRS/EDGE vyjde fakt líp…
BTW Co ten hack pomocí tý piko(mikro/nano?)BTS jak distribuoval zahraniční operátor?To je UMTS/3G a odkazuju to v závěru (…zrovna růžové). To je fail nad faily, leč GSM pikocely se nedistribuují. Ale kdo má mikrocelu v baráku, pustit si Wireshark po těch drátech, co z toho vedou, by mohlo být zajímavé. Jen jestli tam není ipsec - pak by bylo potřeba hackovat přímo tu stanici…
28c3-4736-en-defending_mobile_phones_h264.mp4
):
Mobil poslouchá BTS. Ta pošle Ciphering Mode Command a když telefon nezačne šifrovat, tak mu IMHO přestane rozumět.Aha tak to asi ne, jsem myslel kdyby to bylo jako třeba telnet nebo analogový modem (ne master slave).
My si vycrackovali nějaký rámec zprostředka, ale chtěli bychom znát celou komunikaci. A taky bychom chtěli poslouchat následující komunikace, které se inicializují stejným klíčem, ale napajpuje se tam jiný framenumber (to je něco jako IV, akorát hodně slabý, protože se mezi transakcemi inkrementuje jen o málo).FN se inkrementuje nějak deterministicky? Jak se přenese první hodnota?
Tak ony defaultně mají ty LFRS nuly… kdyby jich nebylo jenom 64 bitů, ale třeba 128, tak to není zas tak špatná šifra…Jo ale kdyby byl klíč nulový i framenumber nulový, tak lfsr generuje jen samý nuly a přenáší se přímo enkódovaný zvuk/data
Ty jo, DCS (GSM 1800) má v ČR snad 70 MHz v jednom směru? To znamená I/Q ADC s 70 Megasamply. Nebo radši rovnou dva (uplink i downlink).To vybereš z libovolného osciloskopu
Já měl za to, že je to 8 timeslotů, tedy 0,577 (?) ms. Ale vzhledem k tomu, že jak poslouchání, tak samotný GSM stack na Linuxu funguje přes USB, tedy milisekunda žádná míra, tak tam asi bude nějaký delay. Nebo se na začátku neposílá nic důležitého . ... To by šlo, ještě to nikdo asi nezkoumal. Když už jsou k dispozici výkresy krabičky (jak to říct diplomaticky?), která dokáže chytat 8 kanálů. To by jednu BTS dát mohlo.Aha takže přímo hnedka v dalším slotu, zajímavý. A ten ovladač přes linux řídí přímo vysílač? :-O Tak to je masakr
No poraď, zatím nejlevnější SDR je rtl-sdr s šířkou 2 MHzSatelitní přijímač downmixuje tuším z >10GHz na ~1GHz, analogová televize má obrazovou mezifrekvenci 30MHz, takže stáhnout z 1.8G by to šlo horší je prostě ten AD převodník no, ale 100MSps se koupit dá (nebude to levný, ale zase to nebudou miliony).
Na ten převodník dáš 4 mobily, ale i tak je to pálka…A je to UART→USB? To by možná šlo z nějakýho PICu levnějc...
To nejde. Na BTS se totiž zvuk rozbalí do PCM, infrastrukturou operátora putuje jako PCM a na druhé BTS se zase zkomprimuje GSM/EFR/AMR/jaksetozrovnamenuje a pošle.Aha brrrblé. Zajímavý proč si zvyšuje trafic.
FN se inkrementuje nějak deterministicky?No, překvapivě o jedničku s každým frame
To vybereš z libovolného osciloskopuHele postav to SDRko a lidi ti za to utrhaj ruce. Už jsme přemýšleli i o vysílání ve stylu Tempest nebo tadytoho týpka., navíc můžeš dát třeba několik 10MSps. P.S. Ještě možná spíš 140M dle nyquista-shanona-kotelníka
.
A ten ovladač přes linux řídí přímo vysílač? :-OSamotná demodulace se děje v DSP v mobilu, takže po sériáku už tečou jedničky a nuly, ale jinak je všechno ostatní na počítači.
Nebo by se taky možná dala BTS přinutit přejít na jiný kanál pouhým zarušenímBTS mají kanály alokované staticky (buňky musí být po krajině rozmístěné a spočítané tak, aby se to navzájem co nejmíň rušilo - takže se hladá uspořádání, kde každé dvě stejné frekvence budou co nejdál od sebe). Když jednu na chvilku zarušíš, mobil zkusí handover na vedlejší; když ji zarušíš na dýl, přijede bílá dodávka a začne se zajímat, co se stalo..
(nebo když se zaruší příjem změny frekvence)Nic, přeladíš se na vedlejší BTS. A když je to během hovoru, tak asi spadne :).
A je to UART→USB? To by možná šlo z nějakýho PICu levnějc...No jo, jenže tenhle UART nemá 115200, ale dvojnásobek
Aha brrrblé. Zajímavý proč si zvyšuje trafic.Podle mě proto, že (pick one :)
No, překvapivě o jedničku s každým frame . Vysílá se nešifrovaně na broadcast kanálu.Takže se musí někde nejprve inicializovat a pak už můžou jet asynchronně. Pokud bych odchytnul rámec, tak mám další část klíče, ale to se asi bude posílat taky šifrovaně, že?
Hele postav to SDRko a lidi ti za to utrhaj ruce. Už jsme přemýšleli i o vysílání ve stylu Tempest nebo tadytoho týpka.AD9446 s 100MSps nebo si můžeš vybrat z klikatelné tabulky (+1 bod pro Analog Devices).
Samotná demodulace se děje v DSP v mobilu, takže po sériáku už tečou jedničky a nuly, ale jinak je všechno ostatní na počítači.Hmm takže by mohlo jít zpoždění USB maskovat jako větší timing advance.
BTS mají kanály alokované staticky (buňky musí být po krajině rozmístěné a spočítané tak, aby se to navzájem co nejmíň rušilo - takže se hladá uspořádání, kde každé dvě stejné frekvence budou co nejdál od sebe). Když jednu na chvilku zarušíš, mobil zkusí handover na vedlejší; když ji zarušíš na dýl, přijede bílá dodávka a začne se zajímat, co se stalo.Jedině, že bys měl směrovou anténu a věděl, že teďka vysílá mobil co chceš sledovat a rušičku zapínal jen v jeho kanálu a timeslotu. BTW teoreticky jestli se na začátku vysílání mobilu posílá synchronizační pole, tak bys možná mohl stihnout přeladit dřív než začnou data (kterej kanál bys zjistil pomocí spektrálního analyzéru).
No jo, jenže tenhle UART nemá 115200, ale dvojnásobek .UART modul v PICu má asi 8Mbps
Podle mě proto, že (pick one :)Nejspíš ta nedigitální síť, i když já bych vybral spíš to, že odposlouchávat kodek je složitější než PCM
Takže se musí někde nejprve inicializovat a pak už můžou jet asynchronně. Pokud bych odchytnul rámec, tak mám další část klíče, ale to se asi bude posílat taky šifrovaně, že?Framenumber znáš - k získání klíče z generátoru ho totiž potřebuješ. Viděl jsi to video o A5/1? Nejdřív se do toho napajpuje klíč a pak framenumber. Když to backclockuješ, musíš v těch 22 cyklech vyndavat z těch registrů framenumber.
Hmm takže by mohlo jít zpoždění USB maskovat jako větší timing advance.Nejvyšší TA je 35 km, tedy 120 μs.
Jedině, že bys měl směrovou anténu a věděl, že teďka vysílá mobil co chceš sledovat a rušičku zapínal jen v jeho kanálu a timeslotu.To můžu namířit na mobil a gumovat mu BTSku.
BTW teoreticky jestli se na začátku vysílání mobilu posílá synchronizační pole, tak bys možná mohl stihnout přeladit dřív než začnou data (kterej kanál bys zjistil pomocí spektrálního analyzéru).Posílá se DATA-TRAINING-DATA, ale pravda, pomocí rychlého spektráku nebo pomalého spektráku a následného dohopování rádiem by se dalo zjistit, na kterých kanálech a timeslotech probíhá uplink. Teď ještě co s downlinkem, ale i tak může být půlka hovoru cenná. Taky lze zkusit extrahovat echo z mikrofonu a zrekonstruovat druhou půlku, i když GSM kodek je na tohle dost šmejdský.
Framenumber znáš - k získání klíče z generátoru ho totiž potřebuješ. Viděl jsi to video o A5/1? Nejdřív se do toho napajpuje klíč a pak framenumber. Když to backclockuješ, musíš v těch 22 cyklech vyndavat z těch registrů framenumber.Jo viděl, ale není tam napsaný odkud ho vezmu
Nejvyšší TA je 35 km, tedy 120 μs.Kruci, pravda, to mám z toho, že píšu narychlo nepřihlášen
Je jen otázka času, kdy se na černém trhu začnou objevovat hotové krabičky na odstavení levných GSM zabezpečovaček.To zní jako zajímavý podnikatelský záměr :)
Tj. v okamžiku kdy BTS řekne "zapni šifrování", tak to pirátský vysílač přebije svým silným "pojedem bez šifrování"EE, BTS pak už očekává šifrovaná data a protože útočník nezná klíč, tak je ani nemůže transparentně dešifrovat. GSM mobil podle mě šifrování podporovat musí vždy, o (ne)použití šifry rozhoduje BTS. Respektive koukáním na příchozí spojení jsem nabyl toho dojmu, když komunikaci iniciuje mobil, může to být jinak. GSM zas tak moc nerozumím :).
01-03 pro známou trojku a 98 pro jednoho méně známéhoA co 99, tu ma preci CVUT FEL.
230 99 Vodafone Vodafone Czech Republic Operational GSM 1800 R&D Centre at FEE, CTU (educational, experimental)
A nešlo by zamezit hopingu, tak že zarušíš všechny přednastavené kanály sledované BTS a nechal bys jen jediný volný?Hopping se neinicializuje dynamicky podle zarušených pásem, ale prostě nějak a když to pak nevyjde, tak smůla.
A co metoda aktualizace SIM pomocí falešné BTS?Ono „se“ hlavně tvrdí, že mobil lze kombinací úmyslných backdoorů a děr donutit na dálku zapnout mikrofon a poslouchat.
a v případě potřeby by provedl úpravu HW/SW příušnice sledované osoby, protože jak už z televize víme, někteří komunikují po GSM v kryptované podoběTak doufejme, že u normálních chytrých telefonů (hmm, v současnosti asi jenom věci z OpenMoko a N900) se nedá exploitem GSM napadnout zbytek systému - AT rozhraní pro komunikaci s modemem je tak jednoduché, že tam snad nikdo žádný buffer overflow nezapomněl :). A protože šifrované hovory jsou data (normální SIP přes SSL a šifrované RTP), dá se ze strany operátora udělat tak maximálně DoS.
Ono „se“ hlavně tvrdí, že mobil lze kombinací úmyslných backdoorů a děr donutit na dálku zapnout mikrofon a poslouchat.Můj ne, teda pokud neobjevili způsob jak obejít zákony termodynamiky a zabránit mému mobilu, aby se soustavným vysíláním za pár minut vybil
AT rozhraní pro komunikaci s modemem je tak jednoduché, že tam snad nikdo žádný buffer overflow nezapomněl :)To by ses možná (u non open výrobků) divil
Ono „se“ hlavně tvrdí, že mobil lze kombinací úmyslných backdoorů a děr donutit na dálku zapnout mikrofon a poslouchat.
Něco na tohle téma bych strašně rád viděl, nedá se na to moc nic pořádně vypátrat.