Ni som kör Linux - kompilerar ni kerneln själva?

Permalänk
Hedersmedlem
Skrivet av anjora:

jag tycker det har gått för långt med säkerhetstänket om man kompilerar allt på egen hand för att undvika skadlig kod, iallafall när det gäller mer serlösa linuxdistributioner.

Ja, någonstans måste man alltid dra gränsen för vem man "litar" på. Litar man t ex på Debians/Archs/Gentoos/… officiella källor? Litar man på kompilatorn? Litar man på all sin hårdvara? Litar man på mikrokoden i processorn? Jag vågar säga att ingen enskild person som idag använder en hemdator har full kontroll på alla led, så antingen är man utan tekniken eller så litar man på någon i något led. Vad som är "för långt" eller ej är upp till var och en att bedöma. Jag ser personligen inte just kärnan vara någon större risk ur säkerhetssynpunkt i sig, då den är så välanvänd världen över.

Skrivet av anjora:

Det är klart att om man använder datorn till väldigt kritiska saker så vill man ha hösta tänkbara säkerhet, typ om man jobbar med kärnvapen i iran, för vanligt folk så tycker jag det räcker om man håller sig till trovärdiga reposities.

Om jag får passa på att ge en känga så hade ju Irans kärnanläggningar standard-Windowsdatorer stående ut mot nätet, så de är inga förebilder vad gäller säkerhet .

Skrivet av anjora:

Hur vanligt är det egentligen att offeciella paket till ex arch linux eller debian innehåller skadlig kod?

Om man bortser från ärliga buggar (OpenSSL-buggen i Debian 2008 är nog det mest publicerade exemplet) så är det väl så pass unikt att något medvetet fel skulle inkluderas att det skulle bli en världsnyhet (i utvalda kretsar). Skadlig kod med intention tror jag aldrig har hänt (eller ska vi säga "avslöjats"? ) i någon distribution av rang, och knappt någon annan heller. Jag kan inte komma på ett enda exempel på rak arm, och då omfattar t ex bara Debian ändå ~40 000 paket.

För drygt 10 år sedan var det nyheter om ett försök till en attack på Linuxkärnan, men den var rätt specifik: det var en commit till en CVS-kopia av betaträdet till kärnan på en hackad server som en handfull utvecklare använde. Huvudkoden för kärnan låg i ett annat system (BitKeeper vid tillfället) och CVS-trädet var bara en smidighetsfunktion för de som av någon anledning behövde använda det gränssnittet, och den aktuella servern var bara en liten av många.

Känner någon till exempel så är det givetvis fritt att fylla på med information.

Visa signatur

Nu med kortare användarnamn, men fortfarande bedövande långa inlägg.

Permalänk
Medlem
Skrivet av aluser:

Korrekt uppfattat på första frågan. Det var mer riktat till emaku som hävdade säkerhet genom kompilering då han inte kunde se koppling mellan binären och källkoden men om man inte kollar kompilatorn så finns ju ken thompsons klassiska attack mot kompilatorn och dess moderna varianter (http://www.acsa-admin.org/2005/abstracts/47.html)

Jag har inte implementerat min egna C kompilator vilket är nödvändigt för att skydda mot poisoned bootstrap kompilator. Men det är mycket mer troligt att något av de tusentals packet i en distribution har modifierats än att den bootstrap kompilatorn jag använde för många år sedan hade modifierats. Att kompilera från source är inget 100 procentvigt skydd men det betyder inte att det är slöseri med tid. Man måste alltid försöka balansera säkerhet mot användbarhet. Snowden avslöjandena bekräftade igen vad som redan var känt. Om en motiverad hacker vill in i ett system finns det inga säkerhetslösningar som hjälper. Det bästa man kan göra är att sätta upp bromsklossar och hoppas på att hackern tröttnar innan han kommer in. Eftersom jag kör gentoo är det inget problem för mig att kompilera nästan allt från source.

Permalänk
Medlem

Jag har kört med grSecurity patch så länge jag kan minnas så jag kompilerar om kernel för varje ny sådan som kommer i samband med kernel release. Jag kör å andra sidan Slackware så eget underhåll är något man vant sig vid, det släpps patchade grejjer för Slackware också men kernelen har ju sällan så allvarliga fel att Pat (Slackwares grundare) annser sig behöva skicka ut ett uppdaterat kernel paket.

Visa signatur

Cisco - Linux - VMWare
-- Citera mig om ni vill få återkoppling --

Permalänk
Medlem
Skrivet av Emaku:

Jag kompilerar min egen kernel på alla mina system inklusive Rpi. Jag gör det framför allt för extra säkerhet. En kärna utan stöd för all obskyr hårdvara och nätverksprotokoll har en mindre attack surface och kanske mindre buggar också. Jag kompilerar så mycket jag kan från source av samma anledning. Vanligtvis går det inte verifiera att en precompiled binary kommer från den källkoden som påstås utan modifieringar så genom att kompilera allt själv kapar jag ut mellanhanden.

Kollar du faktiskt igenom källkoderna innan du kompilerar? Annars så vinner du ju absolut ingenting ur säkerhetssynpunkt på att göra det jämfört med binärpaket från betrodda repos.

Permalänk
Medlem
Skrivet av Sir. Haxalot:

Kollar du faktiskt igenom källkoderna innan du kompilerar? Annars så vinner du ju absolut ingenting ur säkerhetssynpunkt på att göra det jämfört med binärpaket från betrodda repos.

Om man använder binärpaket måste man blint lita på både utvecklarna och packeterarna men man måste bara lita på utvecklarna om man kompilerar från source utan att titta över koden. Så även utan att kolla igen koden har man något att vinna på att kompilera själv.

För att svara på din fråga så ja, jag har som vana att kolla över koden för program jag anser vara säkerhetskritiska. Jag kollar inte varje rad för om det mot förmodan finns avsiktliga bakdörrar i den open source koden jag kör är den troligen så väl dold att jag inte hittar den ändå. Jag kollar bara för vanliga buggar och kodkvalitet för att få en bild över hur många oavsiktliga bakdörrar i form av buggar det troligen finns.

Permalänk
Medlem

Kör Arch med CK kerneln och BFS, men det kommer förkompilerad i repos.
Laptopen körde egenkompilerad när Intel hade problem med sina drivrutiner och gav black screen.

Annars ser jag ingen anledning att egenkompilera om man nu inte behöver någon funktion eller patch som annars inte följer med.

Special designade system för visst ändamål är dock en annan sak.

Visa signatur

Arch - Makepkg, not war -||- Gigabyte X570 Aorus Master -||- GSkill 64GiB DDR4 14-14-15-35-1T 3600Mhz -||- AMD 5900x-||- Gigabyte RX6900XT -||- 2x Adata XPG sx8200 Pro 1TB -||- EVGA G2 750W -||- Corsair 570x -||- O2+ODAC-||- Sennheiser HD-650 -|| Boycott EA,2K,Activision,Ubisoft,WB,EGS
Arch Linux, one hell of a distribution.

Permalänk
Medlem
Skrivet av NoWin:

Nej, varför?

If it works don´t break it.

Ibland bootar inte Linux upp med den gamla kärnan som den ska och därför gör man det. Senaste Linux Mint 16 hade dom fixat det problemet version 15 hade (i alla fall på min dator)

Visa signatur

Coca Cola missbrukare Förbjuden dryck för mig pga diabetes
AMD älskare
Katt älskare

Permalänk
Medlem

Kör Gentoo och kompilerar alltid kernel själv. Främst för att slippa onödig skit och moduler.

Permalänk
Avstängd

För 12 år sedan körde jag Slackware och då kompilerade jag min egen kärna.
Det var kul och man lärde sig en del och fick en djupare förståelse för Linux.
Det kändes geekigt att man kunde kompilera egen kärna specifik för sin dator med bara dom sakerna man behövde och för i686 istället för i386 och få den arkitekturoptimerad.

Men nu orkar jag inte med det, är inte lika geekig längre, inte lika nyfiken.
Bryr mig inte om prestanda, datorn är så snabb ändå.
Orkar inte lägga tid på sånt längre.

Det är nog bäst att köra vanliga stock kernel som kommer med disten då får man uppdateringar.

Permalänk
Medlem
Skrivet av Commander:

Kör Arch med CK kerneln och BFS, men det kommer förkompilerad i repos.
Laptopen körde egenkompilerad när Intel hade problem med sina drivrutiner och gav black screen.

Annars ser jag ingen anledning att egenkompilera om man nu inte behöver någon funktion eller patch som annars inte följer med.

Special designade system för visst ändamål är dock en annan sak.

Kör också ck-kärna via repos på Arch på vissa av mina maskiner (främst laptops). Anledningen är att de har optimeringar för den processor jag använder så i teorin ska det kunna ge lite bättre prestanda, men det märks knappt i praktiken. Däremot kör jag standardkärna på de maskiner jag kör ZFSonLinux på för modulen för zfs lirade inte så bra ihop med ck-kärnan (de olika repositorierna uppdaterade inte kärnan samtidigt). Blev alltså mindre strul med standardkärna. Alternativet hade varit att manuellt kompilera modulen för ZFS varje gång kärnan uppdateras vilket känns onödigt jobbigt. Nu får jag ändå manuellt kompilera om drivrutinen till ett tv-kort i servern när jag uppdaterar kärnan vilket är lite trist...

Kompilerar ibland program dock. De som jag installerar via AUR får ju kompileras (det är så AUR funkar på Arch Linux) men ibland har jag kompilerat om standardprogram via ABS eftersom jag behövt annan konfiguration än standardpaketet. Exempel är ffmpeg för att få stöd för någon specialfunktion eller någon udda codec. Men nästa gång paketet uppdateras åker ju standardkonfigurationen in igen så jag gör det bara vid de tillfällen när behovet finns.

Permalänk
Medlem
Skrivet av ronnylov:

Kör också ck-kärna via repos på Arch på vissa av mina maskiner (främst laptops). Anledningen är att de har optimeringar för den processor jag använder så i teorin ska det kunna ge lite bättre prestanda, men det märks knappt i praktiken. Däremot kör jag standardkärna på de maskiner jag kör ZFSonLinux på för modulen för zfs lirade inte så bra ihop med ck-kärnan (de olika repositorierna uppdaterade inte kärnan samtidigt). Blev alltså mindre strul med standardkärna. Alternativet hade varit att manuellt kompilera modulen för ZFS varje gång kärnan uppdateras vilket känns onödigt jobbigt. Nu får jag ändå manuellt kompilera om drivrutinen till ett tv-kort i servern när jag uppdaterar kärnan vilket är lite trist...

Kompilerar ibland program dock. De som jag installerar via AUR får ju kompileras (det är så AUR funkar på Arch Linux) men ibland har jag kompilerat om standardprogram via ABS eftersom jag behövt annan konfiguration än standardpaketet. Exempel är ffmpeg för att få stöd för någon specialfunktion eller någon udda codec. Men nästa gång paketet uppdateras åker ju standardkonfigurationen in igen så jag gör det bara vid de tillfällen när behovet finns.

Skillnaden är lite sådär beroende på arbete. Program startar snabbare ibland för mig med CK men det är tack vare schedulern man aktiverar.

Utöver det så kompilerar jag nya WINE från stefan dösinger git och wine-multimedia-git som innehåller fina prestandaoptimeringar för spel, 100% om inte mer i vissa fall

Visa signatur

Arch - Makepkg, not war -||- Gigabyte X570 Aorus Master -||- GSkill 64GiB DDR4 14-14-15-35-1T 3600Mhz -||- AMD 5900x-||- Gigabyte RX6900XT -||- 2x Adata XPG sx8200 Pro 1TB -||- EVGA G2 750W -||- Corsair 570x -||- O2+ODAC-||- Sennheiser HD-650 -|| Boycott EA,2K,Activision,Ubisoft,WB,EGS
Arch Linux, one hell of a distribution.

Permalänk

Har kompilerat egen kärna under Redhat, Debian och Slackware.. Men det är ju snart 15år sen!
Kompilerade en kärna i höstas för att försöka få stöd för ett tv-kort, men slutade med att jag gick över på Sid istället för att den vägen få tag på en nyare kärna..
Och jo, tv-kortet fungerade efter det, fast nu strular det med mottagningen istället (Måste ha tag på en ny antenn)
Fast oandra sidan så tittar jag bara på simpsons och family guy på sexan ändå, så igentligen kan det kvitta

I övrigt kompilerar jag så lite som möjligt..

Permalänk
Medlem

Kompilerade en kärna för länge sedan mest för att det var kul, samt en gång för en NAS då jag trodde det skulle hjälpa mig att porta en drivrutin för USB serieport från X86 till ARM.

Permalänk
Medlem
Skrivet av phz:

Ska man kompilera för prestandas skull så har man antingen väldigt slimmad hårdvara eller väldigt specifik belastning, skulle jag säga om jag får generalisera hejvilt. I övrigt så anser jag att bevisbördan ligger på de som hävdar att det är faktisk märkbar skillnad i prestanda: ge mig en graf så kanske jag tror på det :-D .

Nu kompilerar jag ju iofs inte om specifikt för prestanda, inte heller har jag någon graf. Men jag kan intyga att min laptop bootar bra mycket långsammare med en standardkärna än den jag själv kompilerat (där jag har kommenterat bort laddningen av firmware som tydligen inte passar nätverkskortet, från drivrutinen). För att behålla mitt förstånd krävs också att jag hårdkodar om tröskelvärdena för när fläkten ska gå igång, så att den inte snurrar på fullvarv så fort jag ens funderar på att skrolla i webbläsaren.

På min stationära dator kompilerar jag också om kärnan, men utan att bråka med källkoden, utan för att bocka av CONFIG_DEVTMPFS_MOUNT och CONFIG_SND_DYNAMIC_MINORS, så att systemet går att använda utan udev. Så att jag inte behöver vänta i "~30 sekunder" på udevs firmware-deadlock ska släppa (gäller iofs inte sedan linux-3.4, där kärnan själv (framgångsfullt (iaf på stationära)) laddar firmware, i stället för att låta udev misslyckas med det). Och så att jag inte ska få kernel panic, när udev tycker att ingen /dev/sda finns. Och så att udev inte ska tycka att min midi-kontroller är det primära ljudkortet. Och så att jag i största allmänhet ska slippa försöka överlista udev, vars huvudsakliga uppgift verkar vara att ställa till med oreda när det allra minst lämpar sig. ;/

Skrivet av deegan:

kernelen har ju sällan så allvarliga fel att Pat (Slackwares grundare) annser sig behöva skicka ut ett uppdaterat kernel paket.

Min senaste omkompilering var Thu Feb 6 23:47:28 CET 2014, för att åtgärda root-exploiten CVE-2014-0038 som fixats i 3.10.29. Vi får väl hoppas att Pat anser det som allvarligt nog. Det här är nog min enda invändning mot slackware, att allt underhåll måste passera en enskild individ.

Permalänk
Avstängd
Skrivet av e5150:

Nu kompilerar jag ju iofs inte om specifikt för prestanda, inte heller har jag någon graf. Men jag kan intyga att min laptop bootar bra mycket långsammare med en standardkärna än den jag själv kompilerat (där jag har kommenterat bort laddningen av firmware som tydligen inte passar nätverkskortet, från drivrutinen). För att behålla mitt förstånd krävs också att jag hårdkodar om tröskelvärdena för när fläkten ska gå igång, så att den inte snurrar på fullvarv så fort jag ens funderar på att skrolla i webbläsaren.

På min stationära dator kompilerar jag också om kärnan, men utan att bråka med källkoden, utan för att bocka av CONFIG_DEVTMPFS_MOUNT och CONFIG_SND_DYNAMIC_MINORS, så att systemet går att använda utan udev. Så att jag inte behöver vänta i "~30 sekunder" på udevs firmware-deadlock ska släppa (gäller iofs inte sedan linux-3.4, där kärnan själv (framgångsfullt (iaf på stationära)) laddar firmware, i stället för att låta udev misslyckas med det). Och så att jag inte ska få kernel panic, när udev tycker att ingen /dev/sda finns. Och så att udev inte ska tycka att min midi-kontroller är det primära ljudkortet. Och så att jag i största allmänhet ska slippa försöka överlista udev, vars huvudsakliga uppgift verkar vara att ställa till med oreda när det allra minst lämpar sig. ;/

Min senaste omkompilering var Thu Feb 6 23:47:28 CET 2014, för att åtgärda root-exploiten CVE-2014-0038 som fixats i 3.10.29. Vi får väl hoppas att Pat anser det som allvarligt nog. Det här är nog min enda invändning mot slackware, att allt underhåll måste passera en enskild individ.

CONFIG_X86_X32_ABI är avaktiverad i Slackwares offciella kernel 3.10.17. Enligt Pat:

"Ah, but CONFIG_X86_X32_ABI is not set. Apparently ld isn't handling x86_32 properly, so the kernel didn't enable that option. Accidentally not vulnerable.

Since I'm here, in cases like the pixman/X server trapazoid bug which can lead to a crash but not privilege escalation, I'm inclined to look at it as a bug rather than a security issue even though it was assigned a CVE. It's not in the same realm as something like the libXfont overflow."

Han verkar klara det väldigt bra som enmans-härskare. Sluta hacka på Slackware nu.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Inaktiv
Skrivet av NoWin:

Nej, varför?

If it works don´t break it.

Om något fungerar - Ta genast sönder det och kontrollera varför