Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Apps that target Android 11 (API level 30) and use Storage Access Framework will no longer be able to grant access to directories, such as the root directory of the SD card and the Download directory. Regardless of target SDK, Storage Access Framework on Android 11 cannot be used to gain access to Android/data and Android/obb directories.source
< manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="29" android:compileSdkVersionCodename="10" android:installLocation="auto" android:label="@string/app_name" package="com.ghisler.android.TotalCommander" platformBuildVersionCode="29" platformBuildVersionName="10">
a
< manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" package="com.arachnoid.sshelper" platformBuildVersionCode="28" platformBuildVersionName="9">
... ze zacal pracovat v Google v oddeleni zabezpeceni Androidu, kde mimo jine resi ochranu/detekci rootovani
u0_a42
– uživ. 0, aplikace 42). Je používán SELinux (snad od Androidu verze cca 4.4) pro omezení přístupu aplikací k HW, souborům jiných aplikací, zápisu do „externího“/sdíleného/„/sdcard“ úložiště (dnes ne nutně SD karta – prostě FS, kam mají aplikace přístup) atd. „Správné“ rozhraní pro meziprocesovou komunikaci je skrz Javovské API – intenty (tj. co spustit + parametry) apod. Klasické Linuxové rozhraní funguje, s tím, že někde od Androidu 5 existuje Storage Access Framework (SAF), který poskytuje abstrakci nad FS – něco a způsob GVfs (soubory nejsou nutně na zařízení, jiná aplikace může obstarávat přístup).
Do /data
a podadresářů jsou přimountovány FS pro jednotlivé aplikace – /data/data/org.example.app
(private data aplikace), /data/app/…
(balíčky), /data/local/tmp
(systémové tmp).
Pak máme sdílená úložiště – interní (překvapivě /sdcard
, dnes spíše /storage/emulated/0
) a další přimountované typicky někam do /storage
. Tam mají aplikace read-only přístup (do Androidu 11?) bez jakýchkoliv oprávnění (nikoliv ta linuxová, ta jsou určena manifestem, u novějších systémů aplikace nemusí mít všechny od instalace a žádá až za běhu). Pro zápis je nutné oprávnění (tj. schválí uživatel při instalaci nebo za běhu). V podadresáři Android/
mají aplikace další podadresáře pro data, kam mohou aplikace vzájemně přistupovat. Aplikace má přístup pro zápis do svého podadresáře. Pak je Android/obb/
, kam se mohou dostáhnout další bloby z Google Play při instalaci (až 2 na aplikaci), které jsou oddělené od balíčku (APK).
Proč „rootovat“? Uživatel nemá na Androidu přístup ke všemu – se systémem muže interagovat jenom prostřednictvím aplikací, které nemohou všude. Snad největší možnosti má uživatel s ADB (Android Debugging Bridge, zpravidla po USB kabelu), kdy může běžet pod uživatelem shell
(dříve i pod rootem), ale i ten nesmí moc sahat na systém (read-only až žádný přístup) a nemá přístup k /data/data
(privátní data aplikací), pokud aplikace není verze k debugování. Do Androidu 10 bylo možné vytvořit zálohu včetně privátních dat přes ADB, teď už ne. Rootnutí znamená zjednodušeně to, že uživatel dostane přístup k rootovským oprávněním (přes ADB, nebo se nainstaluje su
, které umožní aplikaci spouštět příkazy pod rootem, zpravidla se souhlasem uživatele – à la kdesu
). Zpravidla tu trochu zavází SELinux. Možností je několik – zranitelnosti SW (tj. z user-spacu), nahrání vlastního systému bootloaderem nebo úprava systému přes ADB sideload (to dělá recovery, tedy program, který je možné spustit při bootování nebo přes ADB a umožňuje například smazat data nebo přeinstalovat systém) nebo i výměna bootloaderu. Ne každý výrobce to chce uživateli zrovna usnadnit – někde můžete „odemknout bootloader“ (umožnit instalaci nepodepsaného SW) přes USB kabel, jinde chce telefon heslo (pro každý kus samozřejmě jiné) nebo někde je propojka na desce. Často, zejména u starších verzí, pomůžou neopravené chyby v OS. Dříve to bývalo snazší – uživatel měl rootovská oprávnění s ADB už od výroby.
/system/bin
vidí. SUIDnutá binárka su
tam je snad i v běžné instalaci Androidu, ale SELinux její spuštění neumožní, nebo tak nějak. (Pak máme ještě run-as
, který slouží ke spuštění pod UID jiné aplikace, ale ten sám o sobě má omezení jen na debugovatelné aplikace.) U typického rootnutí máte k su
ještě aplikace pro nastavování apod.
su
a pak aplikace, které pro určitou funkcionalitu vyžadují root oprávnění, prostě čekají že je přes su
dostanou?
su
nepoužívají, ale je možné spustit přes USB kabel shell pod rootem, např. pro zálohování.)
... a proč je takový problém tu detekci ošálit?
Nevím, co má tazatel za mobil, ale já jsem byl před pár dny v SAMSUNGU a prodavač mi tam řekl, že pokud rootnu nový model, tak se v něm přepálí nějaký drátek v něčem někde, nebo tak něco a v servisu to potom poznají. Samozřejmě i to by šlo řešit, ale už to vyžaduje nějaké znalosti, zkušenosti a vybavení.
Jo a další problém je, že ten telefon je slisovaný, takže si ani nevyměníš baterii. Pokud bys jej nějak rozdělal, abys řešil ten drátek, tak by pak byl docela problém jej znovu spojit tak, aby to v servisu nepoznali.
VELICE děkuji za vysvětlení. Podívám se na to.
Jsem rád, že taky používáš DuckDuckGO.
Přesně. Proto si teď budu kupovat další mobil. Na stávajícím mám LineageOS. Z něj budu volat, psát sms, mít v něm data atp. Ten druhý mobil budu používat tam, kde to bude nezbytné. Zatím to vidím tak, že bude ležet doma a ty věci budu řešit z domu. Pokud se časem ukáže, že jej budu potřebovat mít u sebe, tak holt budu nosit 2 founy. Co naděláš?
Tiskni
Sdílej: