Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

'Broncode van originele Xbox en Windows NT 3.5 verschijnen op internet'

De broncode van zowel de originele Xbox als Windows-versie NT 3.5 zijn op internet verschenen. Van de Xbox is daarnaast de kernel gepubliceerd, die een aangepaste versie is van Windows 2000. Microsoft zegt het Xbox-lek te onderzoeken.

Bij de Xbox is de broncode volgens The Verge verschenen inclusief 'sommige' build environments, de Xbox Development Kit, test-emulators en interne documenten. De broncode en kernel zijn volgens de technieuwssite al eerder tussen liefhebbers gedeeld, maar zijn nu openbaar op internet verschenen. Daardoor lijken de gevolgen van het lek beperkt, al kunnen andere homebrewers nu ook met de code aan de slag gaan. De Xbox-kernel zou een gemodificeerde en uitgeklede versie zijn van Windows 2000, waar ondersteuning voor DirectX 8 aan is toegevoegd.

Met het lekken van de broncode kunnen homebrewontwikkelaars makkelijker emulators maken van spellen die oorspronkelijk voor de originele Xbox verschenen. Zo zouden oudere spellen bijvoorbeeld op een moderne pc gespeeld kunnen worden. Eerder deze maand verscheen een DirectX 12-versie van Super Mario 64 nadat in 2019 de broncode van het spel was gedecompileerd.

Naast het Xbox-lek, is ook de broncode van een near-final versie van Windows NT 3.5 verschenen. Deze code is inclusief build tools. De ondersteuning voor dit besturingssysteem verliep eind 2001, waardoor de beveiligingsrisico's beperkt zijn. Microsoft zegt tegen The Verge bekend te zijn met de geruchten over de Xbox en deze te onderzoeken. Over het verschijnen van de Windows NT-versie wilde Microsoft niks zeggen.

Door Hayte Hugo

Nieuwsposter

22-05-2020 • 09:49

52 Linkedin

Submitter: CodeAsm

Reacties (52)

Wijzig sortering
Eerder deze maand verscheen een DirectX 12-versie van Super Mario 64 nadat in 2019 de broncode van het spel was uitgelekt.
De sourcecode was helemaal niet uitgelekt, echt de PAL of NTSC versie van de game bevatte nog debug code/hooks waardoor ze het konden reverse engineren naar code, al was het onleesbare code. Hierna hebben mensen ongelofelijk veel tijd besteed om die code handmatig aan te passen met de juiste functie/variabele namen.

[Reactie gewijzigd door DYX op 22 mei 2020 10:01]

Je was me net voor. Grappig dat Tweakers het in hun eigen bericht over de Super Mario port wel goed vermeldt :+
Ze hebben manueel assembly code liggen patchen en hiermee compatibiliteitsproblemen opgelost? Toch wel diepgaande skills voor nodig om dit te doen + veel tijd zoals je zegt.
Ik kan me voorstellen dat ReactOS nu een behoorlijke boost krijgt nu de source van NT vrij inzichtelijk is.
Dat denk ik niet. Vergeet niet dat het hier gaat om Windows NT 3.5x, niet om NT 4.0. Versie 3.5x is nog helemaal Windows 3.11 qua interface. Ook de kernel van 4.0 is behoorlijk geredesigned en aangepast, ten opzichte van die van NT 3.5x. Denk aan de GDI, het drivermodel enzo, die niet met elkaar te vergelijken zijn.

ReactOS is bedoeld als vervanging van Windows Server 2003 en hoger, daar zit niet zo heel veel code van NT 3.5x meer in, zelfs van NT 4.0 zal daar vrij weinig meer in zitten.
Er zit nog heel veel code van NT 3.1 in nieuwere versies. De hele win32 API bijvoorbeeld. Dat het er anders uitziet doet er niet toe: dat zijn nieuwe functies/APIs. Heel windows draait op backwards compatibility en het ergste wat je kunt doen in dat opzicht is code herschrijven: je introduceert nieuwe bugs of neemt oude bugs weg waar je partners software op gemaakt hebben. Overigens heeft ReactOS hier niet zoveel aan: op het moment dat MS aan kan tonen dat een functie een bepaalde onlogische bug heeft die alleen kan als je ook de broncode hebt dan hebben ze een rechtzaak aan hun broek. Dat speelde ook al tijdens de Windows 2000 sourcecode lek. Als je je heel erg verveeld kun je het lek van nu tegen die van 2004 houden.
Nee, ReactOS moet alles reverse engineeren, iig in theorie. Anders krijgen ze copyright schending ellende. Net zoals wine, ze delen dan ook werk zover ik weet. Die win32 api specificatie en wisselende standaarden zelf is soms al een gedrocht ivm Linux...
Je doelt op een echt clean room design. Net zoals de eerste BIOS kloon van een IBM PC.

[Reactie gewijzigd door scholtnp op 22 mei 2020 13:12]

Dat is inderdaad hoe ReactOS en WINE hun development doen. 1 iemand documenteerd hoe de API werkt in Windows. Iemand anders gebruikt die documentatie om een implementatie te schrijven in hun eigen project. De enige manier dat ze zeker kunnen zijn dat de schrijver geen inspiratie haalt uit hoe Microsoft het zelf heeft geïmplementeerd.

Enkele jaren terug heeft, ik dacht, ReactOS zijn ontwikkeling al eens een tijd moeten stil leggen omdat er een vermoeden was dat 1 van de devs mogelijks code had gebruikt/gezien uit een lek van gestolen broncode van Microsoft. Men heeft toen een audit van heel de code van het project laten doen om zeker te zijn dat dit niet gebeurd was.
Volgens sommigen is het een publiek geheim dat ReactOS een hele hoop niet-zo-originele code bevat uit de Windows Research Kernel (de kernel die je van MS kan krijgen als je er onderzoek naar wil doen).

Microsoft heeft nog geen reden om actie te ondernemen tegen het project maar met open source is het altijd lastig om 100% zeker te weten dat iedereen zich 100% aan de regels heeft gehouden.
Ik heb een claim van een Microsoft kernel developer voor je. Er zijn maar weinig mensen die de daadwerkelijke Windows source code kunnen inzien en hij daar één van.

Je kunt er als universiteit aanspraak op doen bij Microsoft maar buiten dat zal het lastig worden om als buitenstaander een vergelijking te doen. Daarnaast zitten er natuurlijk NDA's aan dit soort dingen.

Ik wil niet zeggen dat heel ReactOS een grote rip-off is, maar dat er 1 developer tussen heeft gezeten die besloten heeft wat code uit zijn operating systems vak te hergebruiken for the greater good is nooit uit te sluiten.
Ik heb niet de hele discussie op TheReg gevolgd, maar de beschuldigingen van deze MS dev doen me heel erg denken aan de beschuldigingen over "gestolen code" in BSD rond 1990. Het bewijs bestaat ook nu weer uit macro namen en data structuren. En dat klinkt weer heel erg alsof ReactOS ze uit min of meer publieke bronnen heeft gehaald, zoals bijvoorbeeld de driver development kit (of hoe dat ding ook heette).

De rechter was dertig jaar geleden al niet erg onder de indruk toen de "gestolen" code in het manual bleek te staan (dat prachtige telefoonboek in twee delen, de "UNIX programmer's manual").
Lijkt me niet, de NT4 source code zwerft namelijk ook al een geruime tijd rond op het internet.

[Reactie gewijzigd door smiba op 22 mei 2020 13:08]

Ik denk niet dat ReactOS na de audit nog eens zijn vingers gaat branden aan originele Microsoft code
Natuurlijk blijft het eigendom van Microsoft en snap ik volledig dat zij dit niet zomaar aan zich voorbij laten gaan.

Aan de andere kant zou ik het niet meer dan normaal vinden dat zoveel jaar na het uitfaseren van bijv Xbox/PS1/PS2 etc de broncode oid wordt vrijgegeven aan de community. De consoles worden niet meer verkocht, de games zijn fysiek beperkt beschikbaar en de emulators schieten tekort.

Met het vrijgeven van deze broncode kunnen emulators verbetert worden, waardoor mensen nog kunnen genieten van de oude games (met of zonder de console).

Ik vind het zo’n zonde hoe wordt omgegaan met oude games en hardware. Studio’s hebben ongelooflijk veel tijd en moeite gestoken in een product, wat soms na enkele jaren al niet meer speelbaar of überhaupt beschikbaar is.
Studio’s hebben ongelooflijk veel tijd en moeite gestoken in een product
Maar dat deden ze om geld te verdienen. Ze hebben liever dat je nu de nieuwe koopt dan dat je gratis de oude speelt. Dat is het verdienmodel.
Daar is aan twee kanten wel iets op af te dingen. Artiesten willen behalve geld ook eer van hun werk en kopers blijven altijd nieuwsgierig naar de nieuwste spellen.
Aan de andere kant zou ik het niet meer dan normaal vinden dat zoveel jaar na het uitfaseren van bijv Xbox/PS1/PS2 etc de broncode oid wordt vrijgegeven aan de community. De consoles worden niet meer verkocht, de games zijn fysiek beperkt beschikbaar en de emulators schieten tekort.
Investeert Microsoft niet in emulators voor nieuwere Xbox consoles, waar je de oude spellen nog steeds op kan spelen?

Verder zijn het aantal exclusives voor de originele Xbox maar beperkt. De meeste spellen waren al multi-platform of zijn ondertussen opnieuw uitgekomen voor andere platformen.

Iets algemener, uit de tekst:
Met het lekken van de broncode kunnen homebrewontwikkelaars makkelijker emulators maken van spellen die oorspronkelijk voor de originele Xbox verschenen.
Dat is het meest significante dat met deze broncode kan worden gedaan. De eerste Xbox was al helemaal kapot gehackt. Het enige dat Microsoft nog vrij zou kunnen geven was de 2048 bit RSA private key waarmee spellen ondertekend werden om op retail consoles gespeeld te worden, maar zelfs dat is al +15 jaar niet meer relevant omdat toen al elke Xbox softwarematig gemod kon worden.

[Reactie gewijzigd door The Zep Man op 22 mei 2020 13:30]

Tsja, zonde of niet, ultimo is dat aan Microsoft en de studio's om uit te vechten. Niet aan een hacker.

Sowieso vraag ik em af waarom dit "niet meer dan normaal" zou zijn? De community heeft immers niet geinvesteerd hierin.

Persoonlijk denk ik dat dit niet eens serieus als optie is overwogen. Bovendien zit er geen business model in. Als iemand zo creatief is om dit te bedenken, zal Microsoft best te porren zijn, die maken wel (een hoop) meer open source om die reden.
Probleem is dat er concepten gebruikt worden in opvolgende consoles. Misschien niet exact dezelfde code om een effect of optimalisatie uit te voeren, maar wel het idee erachter.
Intelectueel eigendom bestaat. In tegenstelling tot wat vele denken is het helemaal niet alleen aan Microsoft om te beslissen om Windows of Xbox en voorgaande itteraties daarvan, vrij te geven. Ze hebben er het meeste zeggenschap over, zeker, maar absoluut niet 100%. Er zijn externe bedrijven die daaraan mee helpen.

Daarbij zal veel van wat er in deze code zit ook nog steeds gebruikt worden.
Heel toevallig gezien er ook net aangekondigd is dat de XBOX Live 1.0 service door fans is nagemaakt

https://www.youtube.com/watch?v=5DVKwTtJtS8
Yes en ik heb er een topic over gemaakt. Belangrijker, Luke heeft absoluut niet naar de sources gekeken.
De sources die gelekt zijn zijn trouwens al veel langer in handen van de scene. Ze hielde het alleen verre van publiek om te voorkomen dat mensen onbedoeldt copyright code in emulatoren of homebrew wilde gaan stoppen.

het live project, Xqemu en Cxbx-reloaded maken geen gebruik van de gestolen code en wille dit ook absoluut niet. voorkomen is beter dan... Best vet dat Xbox live bijna weer werkt :D
Waarschijnlijk niet.

Microsoft had interne afspraken waar de publieke Github voor gebruikt mocht worden. Ze zouden alleen gebruikt mogen worden voor software die binnen korte termijn open source (kleine letters) gemaakt zouden worden.
Mmmhhh, Windows zit wel in de grootste Git repo van de wereld. Maar misschien is het een privé server...

Dit zou wel volledig tegen het 'cloud-first' idee van Microsoft in gaan.

/edit:
Zo te zien staat de broncode van de meeste producten in ieder geval semi-cloud:
To tackle this problem, we invested in building a Git proxy solution for GVFS that allows us to cache Git data “at the edge”. We have also used proxies to offload very high volume traffic (like build servers) from the main Visual Studio Team Services service to avoid compromising end user’s experiences during peak loads. Overall, we have 20 Git proxies (which, BTW, we’ve just incorporated into the existing Team Foundation Server Proxy) scattered around the world.

[Reactie gewijzigd door dycell op 22 mei 2020 14:45]

De OG Xbox blijft toch mijn all-time favoriete console. Mooie herinneringen aan.
Ik hoop stiekem dat dit toch gaat leiden naar goed werkende OG Xbox emulatoren. Het zou zelfs mooi zijn als dit dan ook compatible word met de Xbox Live 1.0 service waar aan gewerkt word door Insignia. :)
Heel toevallig heb ik vannacht gekeken of er 'nieuwe oude' xbox spellen op de 360 waren te spelen maar helaas.. Nog steeds dezelfde aks toen ik de laatste keer keek. Zonde...want anders is het ergens ook weggegooid geld voor niets terwijl ik het, net als mijn Dreamcast, goed in mijn studio zou kunnen plaatsen voorvvertier.
Heeft mij doen besluiten om maar naar een 2ehands Xbox op zoek te gaan.
De eerste Xbox was veruit mijn favoriet, ik heb dat ding wel 100 keer uit elkaar gehaald. Buitenkant opnieuw gespoten, logo gepolijst en ga zo maar door. Uren lang met XML lopen kloten voor je XBMC, verwisselbare harde schijven er in. Wat een feest.
Haha, dit is zo herkenbaar! Ik heb zelf ook lopen kloten met hard disken, TSOP flash, de vele applicaties en emulatoren. Wat een feest :) Heb er ook enorm veel van geleerd, denk dat dit toch wel een cruciaal punt is geweest voor het begin van mijn IT carrière.
zouden we dan eindelijk een goed werkende OG xbox emulator kunnen krijgen
Correct me if I'm wrong, maar ik denk dat het gebruiken van deze code hiervoor illegaal is. Zelf een emulator in elkaar knutselen op basis van eigen bronnen (reverse engineering) is dat niet. Is volgens mij ook de reden waarom Nintendo Super Mario 64 voor pc wel offline kan halen, maar visual boy advance en project 64 niet. Want SM64 is eigendom van hen, de emulator en code erachter niet.
Maar het zou wel kunnen dat er een emulator komt zoals bij een Gameboy wordt gedaan, waar de hele schil gewoon zelf gemaakt is, maar je wel zelf nog wel wat minder legale dingen moet downloaden (niet de games bedoel ik dan) om het werkend te krijgen. Ik weet zelf niet precies hoe het zit, maar ben wel eens tegen gekomen dat er iets is in die emulators wat ze niet na kunnen maken zonder copyright schending, dus zeggen ze dat je daar op een legale manier aan moet komen (wat volgens mij niet kan, dus niemand doet).

Ik weet niet of het een perfecte manier is om je wettelijk te beschermen, maar het zou een optie kunnen zijn.
Ik zeg geen nee tegen een mooie xbox emulator. Toch fijn als ik de oude games op een moderne manier kan spelen, ondanks dat microsoft zelf een fantastische emulator heeft op de xbox360 en xbox one werkt natuurlijk niet alles.
Ik zeg geen nee tegen een mooie xbox emulator.
It's out there, een apple Mac G5 !
Dat is wel iets heel anders dan een emulator.
Liever geen sourcecode voor je emulator gebruiken. Zowel iligaal (copyright) als ook in dit geval is de source incompleet. je mist de sources voor de NVidia GPU (alleen de kernel drivers heb je) en geen sources voor de MCPX.

Cxbx-reloaded heeft er niets aan en Xqemu ook niet, want sources zijn te oud (games die nog niet werken zijn met nieuwer SDK gemaakt) en GPU mcpx problemen zijn niet te verhelpen met welke info in deze leak dan ook. (de MCPX was trouwens van AMD, in bruikleen naar Nvidia, miss had Nvidia niet eens alle kennis )
Hoeveel jaar copyright zit eigenlijk op software ? Ik kan mij een uitspraak herinneren dat reverse engineering niet verboden was, maar look and feel of api calls, dan zit je weer op een ander hellend vlak ?
Dat ligt aan hoe het tot stand is gekomen. Bij een individu tot 70 jaar na sterven. Door een rechtspersoon (bedrijf, vereniging, stichting, etc. ) dan 70 jaar vanaf eerste publicatie.
Ik denk dat reverse engineering ook afhankelijk is van hoe je die code daarna gebruikt. Als je het gebruikt om code te schrijven die hetzelfde doet, maar op een andere manier, dan mag dat volgens mij. Maar als je dezelfde code gebruikt, dus gewoon een letterlijke kopie waarbij je misschien wat namen aanpast, dan mag het niet.
Met het lekken van de broncode kunnen homebrewontwikkelaars makkelijker emulators maken van spellen die oorspronkelijk voor de originele Xbox verschenen. Zo zouden oudere spellen bijvoorbeeld op een moderne pc gespeeld kunnen worden.
Ik denk niet dat dit stuk klopt. Er zijn ook sources can Nintendo gelekt en Dolphin heeft daarbij aangeven nog niet eens naar de code te zullen gaan kijken, mede doordat ze bang zijn voor (copyright) claims.

Misschien dat er stiekem wel gekeken wordt of het interessant kan zijn, maar dan praat je alsnog over een API van jaren geleden en daarbij verouderde bijhorende kernel.
De ondersteuning voor dit besturingssysteem verliep eind 2001, waardoor de beveiligingsrisico's beperkt zijn.
Je kunt hier vrijwel niets over zeggen aangezien de Windows kernel nog altijd volzit met legacy stuff. Er zullen echt wel lekken te vinden zijn die nu nog van toepassing kunnen zijn, al kan je met een ring0 driver vrijwel ook alles. ;)

Ik weet niet zo goed wat de impact is op het uitlekken ervan. De VS mag de code al inzien en ik dacht ook enkele andere landen. Zoals gezegd is dit ook niet echt te gebruiken voor iets als ReactOS wegens copyright issues.

[Reactie gewijzigd door foxgamer2019 op 22 mei 2020 11:21]

Doet me denken aan dat als jij aan wine wilt ontwikkelen (de “emulator”, maar meer adapter voor Windows programmas op windows), jij de source code van windows niet gezien mag hebben ivm met copyright


Om te kunnen reageren moet je ingelogd zijn


Apple iPhone SE (2020) Microsoft Xbox Series X LG CX Google Pixel 4a CES 2020 Samsung Galaxy S20 4G Sony PlayStation 5 Nintendo Switch Lite

'14 '15 '16 '17 2018

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2020 Hosting door True