Axel Rietschin, een ingenieur bij Microsoft die zich bezighoudt met de ontwikkeling van de Windows-kernel, de mogelijkheid om het besturingssysteem ReactOS te ontwikkelen zonder code uit Windows over te nemen. Volgens hem hebben de ontwikkelaars van ReactOS gebruikgemaakt van code uit de Windows Research-kernel, waarvan de broncodes zijn gelicentieerd aan universiteiten. Lekken van deze code werden op verschillende plekken gepubliceerd, waaronder GitHub.
Rietschin is ervan overtuigd dat het fysiek onmogelijk is om vanaf nul een ReactOS-kernel te schrijven in de huidige vorm, alleen gebruikmakend van publiek beschikbare documentatie. In het bijzonder komen de namen van interne structuren en functies in de ReactOS-kernel overeen met vergelijkbare namen in de Windows Research-kernel, terwijl deze namen niet worden geƫxporteerd tijdens de compilatie en nergens anders zichtbaar zijn, behalve in de originele code. Dit geldt ook voor macro- en parameter-namen, waarvan het onmogelijk is om ze precies te reproduceren zonder naar de originele Windows-code te kijken.
Laten we herinneren dat in 2006 in ReactOS ongeveer 100 regels assemblercode zijn opgenomen die zijn verkregen door decompilatie van Windows. Daarna werd de ontwikkeling ongeveer een maand stopgezet voor een audit van mogelijke overlappingen. Sindsdien zijn de ontwikkelaars van ReactOS bijzonder voorzichtig met het controleren van de broncodes die voor opname in het project worden voorgesteld.
Bij het uitvoeren van reverse engineering voor naleving van de Amerikaanse auteursrechtwetgeving, hanteert het ReactOS-project een dubbel systeem, waarbij ƩƩn onderzoeker de werking analyseert en op basis daarvan documentatie opstelt, terwijl een andere ontwikkelaar op basis van deze documentatie een nieuwe implementatie voor ReactOS creƫert. Het is niet uitgesloten dat tijdens de analyse gebruik is gemaakt van broncodes van Windows die zijn verkregen door lekken en dat in de opgestelde documentatie overeenkomende functienamen en structuren zijn weergegeven, maar met de ontwikkelingsaanpak die in ReactOS wordt toegepast, zal de implementatie volledig anders zijn en vanaf nul worden gemaakt.
Bovendien zijn er al publicaties over de verwaarlozing van kernelbuilds van NT en W2K met ongefilterde foutopsporingsinformatie, inclusief gegevens over interne variabelen. Veel namen van structuren en functies worden ook vermeld in de headerbestanden die deel uitmaken van de SDK/DDK, en de structuur van systeemoproepen kan worden bepaald door een analyse van componenten zoals de COM-runtime. Zonder het opschonen van de symbolische tabellen worden vaak hotfix-updates gepubliceerd. Daarnaast gebruiken sommige programma's en stuurprogramma's voor Windows niet-openbare, niet-gedocumenteerde oproepen, en veel verborgen mogelijkheden van Windows komen naar voren tijdens de aanpassing van het opstartproces in virtualisatiesystemen en emulators.
ReactOS-ontwikkelaars konden deze componenten gebruiken tijdens het proces van reverse engineering.

Bron: opennet.ru
