Axel Rietschin, inženjer u Microsoftu zadužen za razvoj Windows jezgre, mogućnost razvoja operativnog sustava ReactOS bez preuzimanja koda iz Windowsa. Njegovo je mišljenje da su programeri ReactOS iskoristili kod iz Windows Research jezgre, čiji su izvorni tekstovi licencirani za sveučilišta. Curjenja ovog koda objavljena su na raznim mjestima, uključujući GitHub.
Rietschin je uvjeren da je fizički nemoguće napisati jezgru ReactOS-a od nule u sadašnjem obliku, koristeći samo dostupnu javnu dokumentaciju. Konkretno, imena unutarnjih struktura i funkcija u jezgre ReactOS-a podudaraju se s sličnim imenima u jezgi Windows Research, dok se ta imena ne izvoze prilikom sastavljanja i nigdje se ne vide osim u originalnom kodu. Isto vrijedi i za imena makronaredbi i parametara, čija imena nije moguće točno reproducirati bez uvida u originalni Windows kod.
Podsjetimo, 2006. godine u ReactOS-u je uključeno oko 100 redaka koda na asembleru, dobivenih dekompilacijom Windowsa. Nakon toga, razvoj je otprilike mjesec dana bio obustavljen zbog provođenja audita mogućih preklapanja. Od tada, programeri ReactOS-a posebno pažljivo pristupaju provjeri izvornih tekstova koji se predlažu za uključivanje u projekt.
Prilikom provođenja inverznog inženjerstva u skladu s američkim zakonodavstvom o autorskim pravima, projekt ReactOS koristi dvostruki pristup, pri čemu jedan istraživač analizira rad i na temelju toga sastavlja dokumentaciju, a drugi programer na temelju te dokumentacije stvara novu implementaciju za ReactOS. Nije isključeno da su tijekom analize mogli biti korišteni izvorni tekstovi Windowsa dobiveni curenjem i da su u sastavljenoj dokumentaciji odražena podudarajuća imena funkcija i struktura, ali uz primijenjenu shemu razvoja u ReactOS-u, implementacija će biti potpuno drugačija i stvorena potpuno od nule.
Osim toga, već Objave o zanemarivanju izgradnji jezgre NT i W2K sa neurednim informacijama o debagiranju, uključujući podatke o nazivima unutarnjih varijabli. Mnogi nazivi struktura i funkcija također se nalaze u zaglavljima koja su dio SDK/DDK, a strukturu sistemskih poziva može se odrediti analizom takvih komponenti kao što je COM runtime. Bez čišćenja simboličkih tablica imena, često se objavljuju hotfix ažuriranja. Osim toga, neki programi i upravljački programi za Windows koriste nepublicirane, nedokumentirane pozive, a mnoge skrivene sposobnosti Windows-a isplivaju tijekom rada na adaptaciji pokretanja u virtualizacijskim sistemima i emulatorima.
Razvijatelji ReactOS-a mogli su koristiti ove komponente tijekom procesa obrnutog inženjeringa.

Izvor: opennet.ru
