Quellcode: warum so wichtig?

Hallo!

Ich habe folgende Frage zu dem Quellcode. Es ist mir klar, dass Quellcode für die Unternehmen eine so große Bedeutung besitzt, da es das eigentliche kommerzielle Produkt darstellt (von Support u.ä. mal abgesehen). Im Zusammenhang mit dem angeblichen Windows-Quellcode-Klau ist mir allerdings die Behauptung aufgefallen, mit diesem Wissen wäre es möglich, „neuartige und unzerstörbare Viren“ zu erschaffen.

Wie wäre es dann eigentlich möglich?? Heisst das, die Hacker könnten Bugs in der Software ausfindig machen und dann diese Sicherheitslücken ausnutzen? Das würde dann im Widerspruch mit der viel gerühmten Keimfreiheit von Linux stehen, dessen Quellcode ja allgemeinzugänglich ist. Oder steckt doch mehr dahinter?

An einem anderen Beispiel: wenn ich überraschenderweise in meiner Mailbox das gesamte Quellcode von 3D Studio MAX finde, werde ich also nicht nur im Stande sein, die Funktionsweise der Software nachzuvollziehen und die Algorithmen dann für meine eigenen Zwecke zu verwenden, sondern auch viel mehr? Was denn?

Könnte mir das jemand bitte bitte erklären? Ich programmiere Java und C++, aber ich verstehe die Wichtigkeit des Quellcodes in dem geschilderten Zusammenhang immer noch nicht.

Vielen Dank im voraus.

MfG, Umka.

Hi,

Wie wäre es dann eigentlich möglich?? Heisst das, die Hacker
könnten Bugs in der Software ausfindig machen und dann diese
Sicherheitslücken ausnutzen?

ja.

Das würde dann im Widerspruch mit
der viel gerühmten Keimfreiheit von Linux stehen, dessen
Quellcode ja allgemeinzugänglich ist.

Nein. Der Quellcode wird nicht nur von Hackern gelesen, sondern von Leuten, die Bugs und andere Problemstellen suchen und anschließend beseitigen. Danach existiert der Angriffspunkt nicht mehr. Klar - in alten Versionen schon noch; aber Linux beispielsweise hat schon ein Weilchen auf dem Buckel und kann als ausgereift angesehen werden.

An einem anderen Beispiel: wenn ich überraschenderweise in
meiner Mailbox das gesamte Quellcode von 3D Studio MAX finde,
werde ich also nicht nur im Stande sein, die Funktionsweise
der Software nachzuvollziehen und die Algorithmen dann für
meine eigenen Zwecke zu verwenden, sondern auch viel mehr? Was
denn?

Du verfügst über Kenntnisse, die ohne Quellcode nur sehr schwer erlangt werden können. Was immer Du mit diesen Kenntnissen anfangen willst (und kannst), kannst Du tun. Ob Du nun den Hersteller auf ein Problem aufmerksam machst, ihn für Dich ausnutzt oder ziellos Schaden anrichtest, ist vom Grad Deiner kriminellen Energie abhängig.

Könnte mir das jemand bitte bitte erklären? Ich programmiere
Java und C++, aber ich verstehe die Wichtigkeit des Quellcodes
in dem geschilderten Zusammenhang immer noch nicht.

Wenn Du kompilierte Programme weitergibst, stößt man (mehr oder weniger; man kann „einen“ Quellcode wiederherstellen, der aber quasi nicht lesbar ist) höchstens durch Ausprobieren oder andere Zufälle auf eine Sicherheitslücke. Den Quellcode kann ein Programmierer (wie Du es bist) begutachten, verstehen und so Problemfälle aufdecken.

Cheatah

Du verfügst über Kenntnisse, die ohne Quellcode nur sehr
schwer erlangt werden können. Was immer Du mit diesen
Kenntnissen anfangen willst (und kannst), kannst Du tun. Ob Du
nun den Hersteller auf ein Problem aufmerksam machst, ihn für
Dich ausnutzt oder ziellos Schaden anrichtest, ist vom Grad
Deiner kriminellen Energie abhängig.

…außerdem bist Du als Klauer einer der Wenigen, die die eventuellen Lücken kennen, im Gegensatz zu einer breiten Öffentlichkeit - es gibt also nicht die Möglichkeit, daß jemand anders redlich damit umgeht und z.B. den Hersteller informiert.

Gruß

J.

Danke schön! Ist mir jetzt klar! (o.w.T.)

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

des weiteren kannst Du (Beispiel Windows) z.B. ganze
Programmteile durch einen Virus austauschen. Da Du die
Sources besitzt und Windows ja sowieso ROOT-Rechte hat
(W9x), veränderst Du einige DLLs so, daß sie Dich (den
Virus) weiterverbreiten. Da die ursprünglichen Funktionen
erhalten bleiben, merkt keiner was.
Da Virenscanner wie Norten AV usw. auch zum Scannen nur
Betriebssystemroutinen benutzen, kannst Du diese auch dahin-
gehend verändern, daß Deine kleinen Änderungen nicht erkannt
werden. Zum Beispiel könnte NAV beim Scannen der veränderten
DLLs immer die korrekten Dateien geliefert bekommen und
würde somit garnichts merken.
Dies alles ist nur durch genaue Kenntnis des Sources
möglich.

Alex (der zum Glück keine Viren schreibt :wink: