<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Sicherheitslücke in Windows?]]></title><description><![CDATA[<p>Hey ihr,<br />
Vor kurzem habe ich hier schonmal die Frage gestellt ob es möglich ist mit C++ oder Assembler den Speicher fremder Prozesse zu lesen oder in ihn hinein zu schreiben.<br />
Die Antwort war &quot;nein&quot;, da Windows das von Haus aus verhindert.</p>
<p>Gerade ist mir allerdings eine Idee gekommen, wie Programmierer diese Sicherheitslücke theoretisch, zumindest, was das Lesen angeht umgehen könnten.<br />
Starten Sie nämlich ein selbst Programmiertes Programm, was ausgesprochen viele uninitialisierte Variablen hat, so kann auf den Inhalt dieser Variablen zugegriffen werden.<br />
Dieser &quot;Inhalt&quot; ist allerdings nichts anderes als der Inhalt des fremden Prozesses, welcher zuvor im Speicher war.</p>
<p>Glabt ihr irgendein ausgefuchster Programmierer, der diese Sicherheitslücke sehr gezielt anwendet an eigentlich 'geheime' Informationen über andere Programme kommen kann?</p>
<p>cya<br />
David</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/193016/sicherheitslücke-in-windows</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 18:13:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/193016.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 21 Sep 2007 06:27:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 06:27:40 GMT]]></title><description><![CDATA[<p>Hey ihr,<br />
Vor kurzem habe ich hier schonmal die Frage gestellt ob es möglich ist mit C++ oder Assembler den Speicher fremder Prozesse zu lesen oder in ihn hinein zu schreiben.<br />
Die Antwort war &quot;nein&quot;, da Windows das von Haus aus verhindert.</p>
<p>Gerade ist mir allerdings eine Idee gekommen, wie Programmierer diese Sicherheitslücke theoretisch, zumindest, was das Lesen angeht umgehen könnten.<br />
Starten Sie nämlich ein selbst Programmiertes Programm, was ausgesprochen viele uninitialisierte Variablen hat, so kann auf den Inhalt dieser Variablen zugegriffen werden.<br />
Dieser &quot;Inhalt&quot; ist allerdings nichts anderes als der Inhalt des fremden Prozesses, welcher zuvor im Speicher war.</p>
<p>Glabt ihr irgendein ausgefuchster Programmierer, der diese Sicherheitslücke sehr gezielt anwendet an eigentlich 'geheime' Informationen über andere Programme kommen kann?</p>
<p>cya<br />
David</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369837</guid><dc:creator><![CDATA[777]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:27:40 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 06:29:48 GMT]]></title><description><![CDATA[<p>Vermutlich nicht - zumal du nicht einmal wissen kannst, welches Programm vor dir diesen Speicherbereich genutzt hat (und was Windows seitdem noch damit angestellt hat)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369840</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369840</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:29:48 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 06:39:50 GMT]]></title><description><![CDATA[<p>Ja - genau das war auch das Problem, was ich bei der Überlegung hatte.<br />
Aber es gibt ja schließich ür alles Möglichkeiten, oder nicht?<br />
Man könnte beispielsweise dafür sorgen, dass ein Programm, was man ausspionieren möchte ausgesprochen oft ausgeführt und somit fast allen Speicherplatz belegt.<br />
Aber es war ja auch nur ein Gedankenansatz von mir... und das Windows groß was am Proggi verändert glaube ich nicht- warum sollte es <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369844</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369844</guid><dc:creator><![CDATA[777]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:39:50 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 06:54:43 GMT]]></title><description><![CDATA[<p>Also dass, das nicht gehen soll stimmt natürlich so nicht. Die WinAPI stellt sogar Funktionen bereit um den Speicher fremder Applikationen zu lesen oder etwas da rein zu schreiben.<br />
Gibt auch haufenweise Tutorials dafür. Du musst nur bisschen googeln dann findest du bestimmt was.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369852</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369852</guid><dc:creator><![CDATA[Tanren]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:54:43 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 06:55:07 GMT]]></title><description><![CDATA[<p>Erstens: Das Programm kann ja selber noch Aufräumarbeiten durchführen, bevor es beendet wird (und wenn nur irgendwer auf die &quot;sinnige&quot; Idee kommt, seine Destruktoren als <code>if(ptr){delete ptr;ptr=0;}</code> zu schreiben).</p>
<p>Zweitens: Was genau zu den Aufräumarbeiten von Windows gehört, kannst du nicht vorhersagen.</p>
<p>Drittens: Selbst wenn deine Variablen tatsächlich den letzten Wert aus dem Fremdprogramm &quot;erben&quot;, weißt du immer noch nicht, welche Variable was darstellt.</p>
<p>Viertens: Du siehst - wenn überhaupt - nur die letzte Speicherbelegung des Fremdprogramms vor dem Beenden. Wie es dahin gekommen ist, erfährst du nicht.</p>
<p>(PS: Und außerdem kann der Compiler auch entscheiden, deine &quot;nicht-initialisierten&quot; Variablen mit einem Dummy-Wert zu belegen - was gerade im Debug-Modus auch gerne genutzt wird)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369853</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369853</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:55:07 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 06:58:13 GMT]]></title><description><![CDATA[<p>Ich habe bis heute nicht verstanden, warum genau im Debug-Modus diese Variablen initialisiert werden und im Release-Modus nicht. Sollte es nicht aus Robustheitsgründen wenn dann genau andersrum sein?</p>
<p>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369855</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:58:13 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 07:04:44 GMT]]></title><description><![CDATA[<p>SideWinder schrieb:</p>
<blockquote>
<p>Ich habe bis heute nicht verstanden, warum genau im Debug-Modus diese Variablen initialisiert werden und im Release-Modus nicht. Sollte es nicht aus Robustheitsgründen wenn dann genau andersrum sein?</p>
</blockquote>
<p>Sie werden ja i.A. nicht initialisiert (was für mich die Belegung mit einem sinnvollen Wert impliziert), sondern absichtlich auf Konstanten wie 0xCDCDCDCD gesetzt, damit man im Debugger schnell sieht, wo man es mit uninitialisiertem Speicher zu tun hat.</p>
<p>Ich schätze dass man im Releasemodus eben darauf verzichtet hat Performancegründe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369859</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369859</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Fri, 21 Sep 2007 07:04:44 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 07:06:55 GMT]]></title><description><![CDATA[<p>Im Debug-Modus soll erkannt werden, wenn du mit nicht-initialisierten Variablen arbeitest, darum bekommen die ein definiertes Bitmuster zugewiesen (das hoffentlich nicht als echter Wert auftreten wird). Im Release-Modus sollten solche Fehler ausgemerzt sein, da braucht diese Dummy-Initialisierung nur unnötig Zeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369860</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369860</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Fri, 21 Sep 2007 07:06:55 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 07:11:25 GMT]]></title><description><![CDATA[<p>Mhh... vermutlich habt ihr Recht, dass es auf diese Art und Weise schwer ist fremden Speicher zu lesen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /> Oder ihn zu verstehen.</p>
<p>Aber das die API extra Funktionen dazu bereit stellt in fremde Prozesse zu schreiben finde ich merkwürdig.<br />
Das ist ja für die Windowsprozesse fast so als würde Bill Gates mit einem Schild um den Hals herumlaufen wo draufsteht: &quot;Erschiesst mich!&quot; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369864</guid><dc:creator><![CDATA[777]]></dc:creator><pubDate>Fri, 21 Sep 2007 07:11:25 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 07:41:09 GMT]]></title><description><![CDATA[<p>Wenn du einfach mal deinen alten Thread gründlich gelesen hättest, wäre dir aufgefallen, dass die Antwort eben nicht nein lautet.<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-192368.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-192368.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369876</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 21 Sep 2007 07:41:09 GMT</pubDate></item><item><title><![CDATA[Reply to Sicherheitslücke in Windows? on Fri, 21 Sep 2007 07:51:44 GMT]]></title><description><![CDATA[<p>777 schrieb:</p>
<blockquote>
<p>Glabt ihr irgendein ausgefuchster Programmierer, der diese Sicherheitslücke sehr gezielt anwendet an eigentlich 'geheime' Informationen über andere Programme kommen kann?</p>
</blockquote>
<p>Ja, deshalb ist es Usus, z.B. eingegebene Passwörter nach dem Prüfen zu überschreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369887</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369887</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Fri, 21 Sep 2007 07:51:44 GMT</pubDate></item></channel></rss>