Waarom is OSX/Unix zo veilig tov Windows?
Gisteren hadden we het erover met 5 andere - -ers en we konden het niet echt verklaren.........
Ok, OSX/Unix wordt door minder mensen gebruikt dus heeft het minder zin om er een virus voor te schrijven, maar het effect van een Unix virus is minstens net zo groot als een windows virus toch?
Heel veel servers draaien tenslotte Unix (toch? ) en als je in een keer al die servers uit de lucht hebt..........., voor een schrijver van een virus is dat toch wel een mooi 'resultaat'.
Maar dat gebeurt niet en ik kan ook niet echt verklaren waarom het zo veilig is..........
Kan iemand me dat in Jip en Janneke taal uitleggen? Het zal wrs iets met de software-technische kant te maken hebben, maar ik heb geen verstand van c/cc+/cccp++/hccp etc.
Alvast bedankt!!!!!
(Bewerkt door Toco om 12:13, 9-07-2007)
Gewone gebruikers kunnen bijvoorbeeld geen wijzigingen maken aan het systeem zelf, of aan bestanden van anderen komen. Onder UNIX kan een gewone gebruiker alleen dingen wijzigen in zijn eigen wereldje.
Zou een user een virus oplopen dan zullen alleen zijn eigen files aangetast kunnen worden. Er is geen mogelijkheid om het systeem te slopen en ook de kans dat het syteem crashed is best klein. Er zal in elk geval geen onherroepelijke schade worden berokkend.
Ja, er zijn manieren om een systeem te crashen maar die vereisen grote kennis van de software die draait op het UNIX systeem in kwestie. De cracker / script kiddie gaat dan namelijk op zoek naar programmeer-fouten in deze applicatie, waardoor zij hun virus meer rechten toe kunnen eigenen. Of hij moet er in slagen een programma te maken dat dergelijke illegale instructies uitvoert dat het systeem vast loopt. Maar dan is een simpele reboot doorgaans genoeg.
De enige manier waarop het echt heel erg fout kan gaan is als een user zo dom is om zich zelf zogenaamde "root" rechten te geven. Dat is net zoiets als het werken als "administrator" onder Windows. Op die manier kan je -wel- het hele systeem slopen. Vandaar dat veel crackers en script kiddies het hun doel maken om root te worden op de door hun uitgekozen slachtoffers.
(Bewerkt door Cailin Coilleach om 12:56, 9-07-2007)
(Bewerkt door bcvthul om 13:04, 9-07-2007)
Als je bv een bestandje aanwijst, en je doet Apple'tje+i, en bekijkt dan de rechten / privileges. Kun je die veranderen. Kijk bv bij 'gebruiker', 'groep' en 'andere'. In de Terminal kun je dat beter zien, als je er verstand van hebt.
Op een Unix (en ook Mac OS X) heb je verschillende gebruikers en bestanden (maar ook programma's en achtergrond processen op de computer) die als verschillende 'gebruikers' draaien op het systeem. Ze mogen elkaars bestanden niet aanpassen of processen draaien als een andere 'users' op het system. Elke 'user' mag bepaalde dingen, en vooral bepaalde dingen NIET!
Naar mijn idee (voor het Windows 2000 en XP tijdperk zeg maar) was er op Windows maar 1 gebruiker, dat ben jijzelf achter de Pc. En die mag alles doen. Dus een virus ook als je deze start, en daar begint de sneeuwbal vanzelf te rollen. Met XP en Vista is dat een beetje veranderd, maar het 'eeuwen oude' chmod systeem zit niet in Windows. Windows heeft er iets vergelijksbaar op maar of het echt helpt op Windows ... ? Geen idee.
Ik voel me in ieder geval veel veiliger op MacOS X (Unix/Linux) dan op een Windows systeem.
bcvthul om 13:02, 9-07-2007UNIX heeft al een lange historie mbt netwerken (al van af jaren 70). Allerlei ' kinderziekten' waarmee ander niet UNIX sysemen last hebben is UNIX al ontgroeid (in den begin jaren van UNIX zaten ook allerlei 'bugs' mvt security)
Helaas heeft dat er toch weinig mee te maken.
Ironisch genoeg zijn het vaak de langstlevende softwarepakketten voor UNIX (Sendmail is een heel beruchte) die nog steeds voor de grootste problemen zorgen.
Het zit'm echt in de modulaire aanpak waarmee het hele operating system is gebouwd. En niet alleen met de file permissies die Denn88 nog eens noemt, maar ook in het geheugen en de kernel zelf. UNIX maakt in het geheugen (RAM en swap space) namelijk ook onderscheid tussen system space en user space. Op die manier draaien alle kritische onderdelen van het OS in een beschermd onderdeel van het geheugen waar ook niet zomaar iedereen iets in weg kan schrijven.
Hoe kan het dan dat windows, ook XP, zo onstabiel is en OSX zo stabiel? Heeft dat alleen maar te maken met het feit dat het vanaf de jaren 70 al ontwikkeld is? Windows is ook redelijk oud?
En wat doet een virus dan met windows, alleen de rechten veranderen en zo de computer laten ploffen?
En de reden waarom het stabieler is ligt voornamelijk in de wijze van geheugen beheer (wat ik net al noemde). Omdat de kritische onderdelen van het systeem in een beschermd stuk geheugen lopen en omdat zij gegarandeerd CPU tijd krijgen is het OS erg lastig onderuit te halen. Het heeft -niets- te maken met hoe lang het OS al bestaat.
Hoe is het ooit zover gekomen?* UNIX was van de grond af aan al gebouwd met het oog op beveiliging en meerdere gebruikers.* Windows begon als een desktop OS waarbij deze zaken een soort van "after thought" zijn. Ze zijn pas veel later toegevoegd.
Overigens is Windows XP niet veel onstabieler dan Mac OS X. Beiden crashen wel eens, maar niet om de haverklap. D'r zit dus niet veel verschil meer in de betrouwbaarheid.
(Bewerkt door Cailin Coilleach om 14:09, 9-07-2007)
(Bewerkt door Cailin Coilleach om 14:19, 9-07-2007)
Microsoft is een beetje vergelijkbaar als de 2e Kamer. Een hoop politiek omdat erteveel mensen zijn die iets te vertellen hebben, waardoor er te weinig echt daadwerkelijkgoed wordt gedaan.
Linux en Apple e.d. zijn kleine wendbare bedrijven, die toch op de een of anderemanier veel meer met hun voeten bij de gebruiker staan, waardoor er sneller enbeter gereageerd kan worden op de eisen/wensen van de consument.(ook al lijkt het niet altijd zo)
Nu moet ik wel zeggen dat Vista in principe behoorlijk stabiel is, en dat de onstabiliteitvooral komt doordat mensen niet weten wat ze doen (wat dan weer veroorzaakt wordtdoor het onoverzichtelijke systeem). Zoals 2 of 3 firewalls, verschillende adwareprogramma's, diverse anti-virusprogramma's tegelijk draaien, onnozel slechtetorrentprogrammaatjes downloaden e.d.
(Bewerkt door joram om 14:33, 9-07-2007)
Toen Longhorn (nu omgedoopt tot Vista, toch?) aangekondigd werd, samen met wat nieuwe filesystem feutures van Microsoft, zou MS-Dos eindelijk vervangen worden door iets beters. Maar helaas.
Unix en dan vooral de command line (in Mac OS X kun je dat vinden in de Terminal applicatie om hiermee aan de slag te gaan) dient ook als onderlaag van een besturings systeem. Deze command line is al vanaf het begin op bovengenoemde punten gemaakt (rechten, multi-tasking en meerdere users, al dan niet tegelijk ingelogd). Elk besturingssysteem heeft een onderlaag. Op Unix/Linux en dus ook MacOS X is dat deze command line, in vele varianten en wordt ook wel Shell genoemd. Daarboven op draait wat ze noemen de X-Window, ofwel de grafische schil. Wat wij kennen als Mac OS, of Windows, dus de Finder, het Apple menu, de Dock enzo. Op Windows is dat de Verkenner, configuratie scherm etc.
MacOS X heeft Aqua en Windows Vista heeft Areo. Linux heeft bv weer Gnome, KDE ... zo zijn er nog wel meer te noemen. Als je Mac of Windows computer even niet reageerd kan het vaak voorkomen dat ze 'top laag' even blijft hangen. Maar functies als netwerk enzo blijven dan wel draaien.
Het is dus van heel erg belang dat deze 2 lagen heel goed op elkaar aansluiten en reageren. Dat kan wel eens fout gaan en dan crashed er iets. Apple heeft gekozen voor een goede (door ontwikkelde basis laag: Darwin Unix) en wat Apple eigenlijk grofweg gezegt 'alleen maar' doet is die Aqua laag bouwen. De open-source Unix laag, Darwin, wordt actief onderhouden door de open-source community.
@ Toco: let maar ff niet op ons... We gaan waarschijnlijk nu wat te technisch worden :p
denn88 om 14:43, 9-07-2007Het oude MS-Dos in het begin tijdperk van Windows dient tot op de dag van vandaag met Windows XP en Vista nog steeds als de basis laag waarop Windows opereerd.
Dat zijn onderandere die witte letters en regels waarmee een Windows computer opstart. Op de Mac heb je dus iets vergelijkbaars, maar dat zie je niet, tenzij je de Mac opstart met Apple'tje+s. Als de onderlaag klaar is met laden gaat deze over naar de XWindow, hierover later meer.
Daarnaast is het niet appeltje+s, maar appeltje+v waarmee je de log messages kan zien. Met appeltje+s start je op in "single user mode", welke eigenlijk is bedoeld voor onderhoud aan het systeem. Daar wil je als gewone gebruiker NIET in terecht komen, aangezien je als root zit te werken op dat moment.
En als laatste gebruikt OS X geen X-Windows, maar Aqua. Het X-Windowing systeem is wel beschikbaar in de vorm van X11.app, maar dat is niet nodig om OS X applicaties te runnen.
Unix en dan vooral de command line ......Op Windows is dat de Verkenner, configuratie scherm etc.
De shell en de command line zijn -niet- de onderlaag van het OS. Zij draaien, net als de grafische laag, bovenop het OS. Dingen als rechten zijn geregeld in het file systeem (HFS+, UFS, enz), in de kernel en in geheugen management.
MacOS X heeft Aqua en Windows Vista heeft Areo. Linux heeft bv weer Gnome, KDE ...
Het is dus van heel erg belang dat deze 2 lagen heel goed op elkaar aansluiten en reageren. ...De open-source Unix laag, Darwin, wordt actief onderhouden door de open-source community.
Alhoewel ook Darwin is ontwikkeld door Apple...
Opstarten met Apple'tje+s moet je nog steeds inloggen met een account. Je ben niet direct ingelogd als 'root' user. Dat hoeft ook niet als root want je kunt gewoon je eigen MacOSX account gebruiken hiervoor.
Ik wilde er ook nog bijschrijven dat dit 'verbose' mode heet, maar dat wordt te technisch En ik bedoelde ook, in Jip en Janneke taal, dat de Terminal 'toegang' biedt tot die Unix laag. Inderdaad, de terminal is NIET die 'onderlaag'.
Van Windows XP enzo dat dat niet meer op DOS draait wist ik niet.
Dus @Toco, hoop dat het een klein beetje duidelijk is.
Ach... We blijven allemaal vrienden... Da's het belangrijkst
@ Calin, alleen:
X11.app/file systeem HFS+, UFde kernel Gnome en KDE zijn Desktop Environments en geen grafische managers als Aqua / Aero. Op Linux gebruik je daarvoor XFree86 of X.org.
Snap ik niet, dus het valt allemaal wel mee toch?
Is het erg moeilijk om het bovenstaande in Jip en Janneke taal uit te leggen?
Voor de Kerne en het verschil tussen Gnome/KDE en Aqua / Aero ben ik erg benieuwd naar........., of is dit niet de doen?
@TocoHet is misschien moeilijk uitleggen maar ...
Ik zou wat dingen intypen bij WikiPedia. Dat is misschien te technisch maar misschien wil iemand anders nog een gooi doen om dit uit te leggen?
De basis van Linux is nog steeds die command line laag, waar ik het heel de tijd over hebt. Daarbovenop draait bv Gnome of KDE. Waarmee je ala Windows op bv start knoppen drukt en het systeem 'bestuurd' als gebruiker.
De kernel is het aller belangrijkste in een operating system. MacOSX gebruikt de Mach kernel. Een kernel 'regelt' ALLES wat een computer moet doen: kopieren van bestanden, berekeningen maken, geheugen toekennen en netwerk verbindingen opzetten en draaiend houden, maar ook programma's opstarten.
Heel soms, als je geluk hebt hahaha, zie je op je Mac een half transparant scherm te voorschijn komen met de beruchte 'kernel panic'. Je MOET dan herstarten want de kernal is gecrashed.
* X11.appDe Mac OS X applicatie waarmee applicaties vertoond kunnen worden die alleen geschikt zijn voor het X-Windows systeem. X11 is de meest gebruikte versie van het X-Windowing systeem. Met behulp van X11.app kan je een heleboel interessante dingen doen:- Het draaien van Unix applicaties die zijn vertaald naar Mac OS X.- Het draaien van een Unix applicatie OP een Unix server, waarbij het beeld op jou scherm komt.
Zo gebruik ik X11.app bijvoorbeeld om de beheer-tools die op mijn Sun servers draaien te zien. Erg handig!
* file systeemEen file systeem is de manier waarop het OS omgaat met je harde schijf. Er zijn een heleboel verschillende manieren om bestanden en directories op te slaan, met daar omheen nog een heleboel andere leuke snufjes. Als je een nieuwe schijf of partitie gaat gebruiken moet je eerst een file systeem kiezen.
Bij OS X gebruikt men tegenwoordig HFS+. Bij Sun Solaris gebruikt men doorgaans UFS of ZFS. Bij Linux gebruikt men EXT2 en EXT3. Bij Windows gebruikt men FAT32 of NTFS. Elk van deze file systemen slaat bestanden en data op een zeer specifieke manier op. Vandaar dat het vaak onmogelijk is om een schijf van het ene OS te lezen in het andere OS. Tenzij men dus software schrijft die die vertaalslag kan maken.
Omdat Linux een open source OS is is Linux ook het OS dat de meeste file systemen aan kan. Dit komt puur omdat developpers makkelijk de nodige software kunnen schrijven om zo'n file systeem te lezen. Bij OS X en Windows is dit weer erg lastig omdat Apple en Microsoft hun OS gesloten houden.
* de kernelDe kernel is het hart van het OS. De kernel stuurt de hardware aan, verdeelt CPU tijd over processen, verdeelt andere resources (I/O, geluidskaart, videokaart, netwerk).
* Gnome en KDE zijn Desktop Environments en geen grafische managers als Aqua / Aero.Aqua en Aero zorgen er voor dat de grafische omgeving die je ziet op je scherm ook werkelijk word vertoont. Het bepaalt hoe je windows er uit zien, hoe zij worden geplaatst op het scherm en hoe zij reageren op dingen als verslepen/vergroten/verkleinen/enz.
Daarnaast bepalen Aqua en Gnome ook hoe bepaalde window elementen er uit komen te zien: knopjes, invoervelden, menu's, tabellen, dat soort zaken.
Gnome en KDE zijn origineel voor Linux gemaakt. Zij gebruiken XFree86 of X.org voor het vertonen van beelden en hebben een eigen window manager. Daarnaast leveren zij een heleboel extra's, zoals applicaties en een mooie user interface. Omdat zij zoveel extra's leveren noemen we ze "Desktop Environments" in plaats van "window managers" enzo.
* Op Linux gebruik je daarvoor XFree86 of X.org.XFree86 en X.org zijn stukken software waarmee Linux X-Windows applicaties laat zien. Vergelijk het met X11.app onder Mac OS X.
Dankzij X11.app is het overigens ook mogelijk om Gnome of KDE te draaien op je Mac :D Je krijgt dan de volgende laagjes: OS X -> Aqua -> X11.app -> KDE. Dit heeft absoluut geen toegevoegde waarde, behalve dan dat sommige mensen het leuk vinden om KDE applicaties te gebruiken.
(Bewerkt door Cailin Coilleach om 15:46, 9-07-2007)
http://www.youtube.com/watch?v=rtp5gNhBZgo&mode=related&search=
Om even on-topic te blijven, idd voor de uitleg!
Als je nog meer vragen hebt, roep maar raak
@ Toco:
Graag gedaan.
Zelf ben ik meer te spreken over de spoofs van TrueNuff.com. Het filmpje dat jij liet zien is van Novell, de leverancier van Suse Linux. De filmpjes van TrueNuff nemen gewoon iedereen in de zeik :D
1988 Computer viruses are an urban myth. (Peter Norton)
zolang je geen windows draait whahaha..
Maar er betsaan ook virussen voor andere platvormen, maar linux/unix is gewoon veiliger. Ook een voordeel is dat er minder mensen het gebruiken, dus minder behoefte is om een virus te schrijven. Maarja zonder root rechten kom je toch nergens. (tenzij iemand is zo dom om als root op internet te gaan).
-weinig gebruikers-een goede root-os met de langste r&d periode (welke nu dus nog niet afgelopen is)
Toch?
@ Colin,
Ik had er idd al een aantal gezien, maar ik vind Linux zo een leuk wijf..........
(Bewerkt door Toco om 16:48, 9-07-2007)
-weinig gebruikers
Er zijn zat Unix / OS X bakken om te zorgen voor een zware verspreiding. Zoek maar eens naar verhalen over The Morris Worm. Dat was een worm voor Unix systemen (zelfs voor verschillende Unix smaken) die er in de jaren tachtig voor zorgde dat het hele ARPA net plat kwam te liggen.
EDIT: Hier op Wikipedia hebben ze al wat over de Morris Worm geschreven. 1988 was het precieze jaartal.
-een goede root
Als dit jou samenvattig is voor "een goed ontwerp met een oog voor beveiliging", dan heb je gelijk (en een rare vorm van samenvatten ).
-os met de langste r&d periode
Ja, het verklaart wel waarom het stabiel is. Maar nee, het verklaart niet waarom het stabieler is dan Windows.
===
Mijn korte samenvatting: Unix is van de grond af aan ontworpen om rekening te houden met:- beveiliging- meerdere gebruikers die tegelijk gebruik maken van het systeem- afscherming van deze gebruikers- parallelle process verwerking, waarbij meerdere applicaties tegelijk kunnen draaien.
Windows (en ook Mac OS) hield in het begin geen rekening met deze zaken.
(Bewerkt door Cailin Coilleach om 17:02, 9-07-2007)
Terwijl de achtergrond van Windows (en ook de oudere Mac systemen) komt vanafde microcomputer die je thuis hebt staan en die dus vroeger nergens mee verbondenwas. Geen meerdere gebruikers, geen netwerk, geen problemen van buitenaf.
Daar naast was een van de andere doelen van Unix om het te schrijven in een zogenaamde "hogere programmeertaal", in plaats van in "machine taal" (assembly). Op die manier werd het heel makkelijk om Unix te vertalen naar andere computer systemen.
Waarom is dat zo speciaal? Omdat in die tijd computers werden gemaakt door een heleboel verschillende bedrijven, die elk anders werkten. In die tijd was het niet ongewoon dat de CPU alleen al bestond uit meerdere printplaten. Elke computer leverancier maakte zo ook zijn eigen OS en de applicaties die daarop draaiden waren ook alleen geschikt voor dat ene OS.
Het mooie van Unix was dat het was geschreven in de taal "C", met nog maar een heel klein stukje dat in assembly was geschreven. Op die manier hoefde je voor elke computer alleen een stukje software schrijven dat C vertaalt naar machine taal, waarna je het programma (in dit geval Unix) op dat systeem kan draaien. En presto! Een OS dat op een heleboel verschillende computers kon draaien.
Ook tegenwoordig is dit voordeel van Unix nog relevant, want nog steeds zijn er veel verschillende hardware architecturen. Kijk naar HP's RISC en Tru64 systemen, kijk naar IBM's Power systemen en Sun's SPARC boxen. En natuurlijk de computers die de x86 processor gebruiken. Of PDA's met ARM processor, of of of ....
En zo voorts
Linux en BSD zijn prachtige voorbeelden van Unix-achtigen die vertaald ("ge-port" noemen we dat) zijn naar een heleboel verschillende hardware platformen.
EDIT:Wil je een foto zien van de PDP-11 zien waarop Thompson en Ritchie Unix hebben gedraaid? Ga dan eens hier kijken.
(Bewerkt door Cailin Coilleach om 17:54, 9-07-2007)
(Bewerkt door Cailin Coilleach om 17:55, 9-07-2007)
Cailin Coilleach om 12:53, 9-07-2007Kort uitgelegd: onder UNIX is heel strikt vastgelegd welke user wat kan doen met het systeem.Gewone gebruikers kunnen bijvoorbeeld geen wijzigingen maken aan het systeem zelf, of aan bestanden van anderen komen. Onder UNIX kan een gewone gebruiker alleen dingen wijzigen in zijn eigen wereldje. Zou een user een virus oplopen dan zullen alleen zijn eigen files aangetast kunnen worden. Er is geen mogelijkheid om het systeem te slopen en ook de kans dat het syteem crashed is best klein. Er zal in elk geval geen onherroepelijke schade worden berokkend.
Grappig genoeg wordt het systeem kennelijk belangrijker gevonden dan de bestanden van de gebruiker. Ik als gebruiker ben het daar niet altijd mee eens.
Daarbij opgemerkt dat ik hier pas iemand die graag veilig wilde surfen aanraadde om een apart Admin-account aan te maken en te surfen/werken vanaf een NIET-Admin-account en dat werd als overdreven afgedaan. Terwijl dat bij installaties e.d. alleen maar betekent dat je extra de Admin-naam moet invullen en een tab moet geven voordat je je wachtwoord ingeeft. Lijkt me weinig moeite, zeker als je meeneemt wat je er mee afdekt...
Want dat is vaak de achilleshiel van Mac OS X: dat je standaard een Admin-account aanmaakt met de rechten die daarbij horen.
Ik begrijp wel dat het voor Apple zo veel makkelijker is, maar het is volgens mij niet veiliger (lees: niet veilig genoeg).[/news]