<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>botnetz.com</title>
	<atom:link href="http://botnetz.com/feed" rel="self" type="application/rss+xml" />
	<link>http://botnetz.com</link>
	<description>Dieser Blog ist offiziell zensiert.</description>
	<lastBuildDate>Tue, 02 Mar 2010 21:26:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Gartenarbeit&#8230;</title>
		<link>http://botnetz.com/gartenarbeit.html</link>
		<comments>http://botnetz.com/gartenarbeit.html#comments</comments>
		<pubDate>Tue, 02 Mar 2010 21:26:20 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Die Welt]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=321</guid>
		<description><![CDATA[
Doofer Nussbaum. 
Ist man ewig dran, den auszubuddeln, wegen &#8216;nen Batzen Wurzeln.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://botnetz.com/wp-content/DSC00893.jpg"><img class="alignnone size-medium wp-image-322" title="DSC00893" src="http://botnetz.com/wp-content/DSC00893-250x187.jpg" alt="" width="250" height="187" /></a></p>
<p>Doofer Nussbaum. <img src='http://botnetz.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /><br />
Ist man ewig dran, den auszubuddeln, wegen &#8216;nen Batzen Wurzeln.</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/gartenarbeit.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Glastopf &#8211; Top 5 Countries</title>
		<link>http://botnetz.com/glastopf-top-5-countries.html</link>
		<comments>http://botnetz.com/glastopf-top-5-countries.html#comments</comments>
		<pubDate>Sun, 28 Feb 2010 21:59:55 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Glastopf]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=316</guid>
		<description><![CDATA[Hallo.
Ich wollte heute mal einen kleinen Einblick über die Top 5 Attacker geben.
Auf Platz 1 ist ein Angreifer aus den Vereinigten Staaten von Amerika (USA), der mit 2752 Angriffen weit vorne liegt.
Auf Platz 2 folgt ein Angreifer aus der Koreanischen Republik, der mit 1764 Angriffen doch schon um einiges von der USA entfernt liegt.
Auf Platz [...]]]></description>
			<content:encoded><![CDATA[<p>Hallo.</p>
<p>Ich wollte heute mal einen kleinen Einblick über die Top 5 Attacker geben.</p>
<p>Auf <strong>Platz 1</strong> ist ein Angreifer aus den <strong>Vereinigten Staaten von Amerika</strong> (USA), der mit <strong>2752 Angriffen</strong> weit vorne liegt.<br />
Auf <strong>Platz 2</strong> folgt ein Angreifer aus der <strong>Koreanischen Republik</strong>, der mit <strong>1764 Angriffen</strong> doch schon um einiges von der <strong>USA</strong> entfernt liegt.<br />
Auf <strong>Platz 3</strong> belegt <strong>Russland</strong> die Statistik mit <strong>1632 Angriffen.<br />
</strong>Knapp daben, auf <strong>Platz 4</strong> ist <strong>Indonesien</strong> mit <strong>1631 Angriffen</strong>.<br />
Den <strong>5. Platz</strong> belegt <strong>Deutschland</strong>, mit <strong>1469 Angriffen.</strong></p>
<p>Der Glastopf rennt seit <strong>5 Monaten, 3 Wochen und 5 Tagen </strong>und hat <strong>49032 einzigartige Treffer</strong> gesammelt.</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/glastopf-top-5-countries.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ewige Ruhe währt lang.</title>
		<link>http://botnetz.com/ewige-ruhe-wahrt-lang.html</link>
		<comments>http://botnetz.com/ewige-ruhe-wahrt-lang.html#comments</comments>
		<pubDate>Sun, 14 Feb 2010 21:44:36 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=314</guid>
		<description><![CDATA[Nabend.
Ewig nicht mehr gemeldet. Tut mir leid. Falls überhaupt groß wer diesen Blog lesen sollte.
Hab das Theme jetzt mal zu was dunklem und einfachen geändert.
Bei Bedarf poste ich dann mal einzelne Blogeinträge, oft auch in Twitter manier. (Also kurze Beiträge&#8230;)
Zurzeit überlege ich ja noch, irgendwas für den glastopf zu programmieren, weiß nur nicht so genau [...]]]></description>
			<content:encoded><![CDATA[<p>Nabend.</p>
<p>Ewig nicht mehr gemeldet. Tut mir leid. Falls überhaupt groß wer diesen Blog lesen sollte.<br />
Hab das Theme jetzt mal zu was dunklem und einfachen geändert.</p>
<p>Bei Bedarf poste ich dann mal einzelne Blogeinträge, oft auch in Twitter manier. (Also kurze Beiträge&#8230;)</p>
<p>Zurzeit überlege ich ja noch, irgendwas für den glastopf zu programmieren, weiß nur nicht so genau was. Hatte schon an eine SQLite Anbindung gedacht. Habt ihr vielleicht Ideen, was man bauen könnte? Immer her damit.</p>
<p>Desweiteren wollte ich noch auf ein tolles, kleines Spiel hinweisen, dass man mit mehreren Leuten im Netz spielen kann. Im eigentlichen ist es ein Remake von einem alten Amiga Spiel:<strong> Knights</strong></p>
<p>Zu finden ist das ganze unter: http://www.knightsgame.org.uk/<br />
Auch das Forum ist da, wenn es um Bugs und andere Diskussionen geht: http://www.knightsgame.org.uk/forum</p>
<p>Auch steht derzeit ein fester Spieltermin fest, an dem wir uns Online treffen. Dies ist der Sunday 21st February um 16:00 GMT.<br />
Also praktisch nächste Woche. Beachtet aber die Zeitzone. Bei uns wäre das Treffen also um 17 Uhr.<br />
Vielleicht sieht man sich ja dort. Bis später!</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/ewige-ruhe-wahrt-lang.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial: Plugins für den Glastopf</title>
		<link>http://botnetz.com/tutorial-plugins-fur-den-glastopf.html</link>
		<comments>http://botnetz.com/tutorial-plugins-fur-den-glastopf.html#comments</comments>
		<pubDate>Fri, 23 Oct 2009 20:06:41 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[glastopf]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=274</guid>
		<description><![CDATA[
Tutorial: Plugins für den Glastopf

Inhaltsverzeichnis
1. Einleitung
2. Was wird gebraucht?
3. Ein Überblick: Die Struktur des Plugins
4. Los geht's: Das Plugin
5. Sprachenwechsel: Annehmen der Glastopf Daten in PHP
6. Ausgeben der Daten in PHP
7. Schlusswort
» Einleitung
Seit einiger Zeit kann man für den Glastopf Honeypot eigene Module/Plugins basteln. Genauso wie beim Amun Honeypot, werden diese in der Skriptsprache &#8220;Python&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://glastopf.1durch0.de/"><img class="size-full wp-image-275  aligncenter" title="Logo by Lukas Rist - http://glasblog.1durch0.de/" src="http://botnetz.com/wp-content/glastopf.png" alt="Logo by Lukas Rist" width="204" height="83" /></a><strong><br />
Tutorial: Plugins für den Glastopf</strong></p>
<hr />
<pre style="text-align: center;"><strong>Inhaltsverzeichnis</strong></pre>
<pre style="text-align: center;">1. Einleitung
2. Was wird gebraucht?
3. Ein Überblick: Die Struktur des Plugins
4. Los geht's: Das Plugin
5. Sprachenwechsel: Annehmen der Glastopf Daten in PHP
6. Ausgeben der Daten in PHP
7. Schlusswort</pre>
<p><strong>» Einleitung</strong></p>
<p>Seit einiger Zeit kann man für den Glastopf Honeypot eigene Module/Plugins basteln. Genauso wie beim Amun Honeypot, werden diese in der Skriptsprache <em>&#8220;Python&#8221;</em> geschrieben.<br />
Ich habe mich jetzt die letzten Tage ein klein wenig damit beschäftigt, vorallem, weil ich für meinem Blog gerne eine Statistk wollte.</p>
<p>Es hat mich überrascht, das es kaum Zeit brauchte, bis alles funktionierte. Die mitgelieferten Plugins, wie das Twitter oder IRC Plugin reichen vollkommen aus, um sich abzuleiten wie man was eigenes schreibt.</p>
<p>In diesem Tutorial will ich euch an einem Beispiel zeigen, wie man solch ein Plugin schreibt. Hierbei werden wir Python und PHP verwenden, um dies zu realisieren.</p>
<p><strong>» Was wird gebraucht?</strong></p>
<p>Um das Ganze hier schnell zu machen, zähle ich die Dinge, die benötigt werden mal eben in einer Liste auf:</p>
<ul>
<li>Grundlegende Kenntnisse in Python und PHP</li>
<li>Python &gt;= 2.5 auf dem Glastopf Server, PHP &gt;= 5 auf dem Webserver, MySQLdb Modul für Python 2.5, MySQL Datenbank auf dem Glastopf Server System</li>
<li>mysql.py in der glastopf.cfg aktiviert</li>
<li>funktionierende Glastopf Revision &gt;= 189 Installation</li>
</ul>
<p>Wichtig ist vorallem das ihr MySQL auf eurem Glastopf Server installiert habt, sowie das Plugin in der Config aktiviert ist, da sonst ohne dies keine Statistiken erfasst werden und zum Webupdater gesendet werden können.</p>
<p><strong>» Was programmieren wir jetzt?</strong></p>
<p>Wir werden uns jetzt ein kleines Plugin für den Glastopf schreiben, was jede Stunde Statistiken übermittelt, ähnlich wie das Twitter Plugin.<br />
Dieses Plugin übermittelt in diesem vorgegebenen Zeitraum folgendes: Anzahl der Unique IPs, Anzahl der Unique Paths und die Anzahl der Angriffe in den letzten 60 Minuten.<br />
Um diese Sachen zu erfassen, werden wir zwei PHP Skripte benötigen, das Erste nimmt die Daten vom Glastopf entgegen, das Zweite gibt diese wieder aus.</p>
<p><strong>» Ein Überblick: Die Struktur des Plugins<br />
</strong></p>
<p>Sehen wir uns die Ordnerstruktur des Glastopfes einmal an:</p>
<blockquote><p>glastopf@honeypot:/home/glastopf/topf$ ls<br />
AUTHORS    CREDITS  README  files  modules  res<br />
CHANGELOG  LICENSE  conf    log    plugins  webserver.py</p></blockquote>
<p>Im Hauptordner finden wir einen <em>&#8220;files&#8221;</em>-Ordner, wo die Malware gespeichert wird, im <em>&#8220;modules&#8221;</em>-Ordner sind Topfeigene Module enthalten, der <em>&#8220;conf&#8221;</em>-Ordner beinhaltet die Konfigurationsdateien, im <em>&#8220;log&#8221;</em>-Ordner finden wie Logdateien und im letzten Ordner<em> &#8220;plugins&#8221;</em> sind unsere hausgemachten Plugins enthalten.</p>
<p>Uns interessiert jetzt eigentlich nur der<em> &#8220;conf&#8221;</em> und der<em> &#8220;plugins&#8221;</em>-Ordner. Die restlichen können wir ausser acht lassen. Theoretisch ist das Plugin, was wir schreiben ein Logging Module, wie das hauseigene Twitter Modul. Allerdings werden wir ein wenig tricksen, damit unser Plugin als Dataplugin durchgeht. (Wir könnten uns auch die Mühe machen und die <em>&#8220;logger.py&#8221; </em>im <em>&#8220;modules&#8221;</em>-Ordner editieren, damit wir unser Plugin im <em>&#8220;logmodules&#8221;</em>-Unterordner ablegen können.)</p>
<p>Das soll uns aber nicht weiter groß stören. Mal sehen ob da in Zukunft noch eine Unterteilung in Log &#8211; und Datahandling Module eingebettet wird. An sich ist es aber gar nicht mal schlecht, unser Plugin als Datahandling Modul zu bauen, da wir später noch die Möglichkeit haben, komplette Datensätze zu verschicken. (Aber dazu werde ich vielleicht irgendwann nochmal einen Artikel schreiben.)</p>
<p>Da wir flexibel sind, bekommt unser Plugin natürlich auch eine eigene Konfiguration. (Ob das jetzt UNBEDINGT von Nöten ist, ist ja erstmal egal.)<br />
Dazu können wir jetzt schonmal in unserer IDE einen Unterordner &#8220;<em>conf&#8221; </em>sowie eine leere Datei <em>&#8220;gsweb.cfg&#8221;</em> anlegen. Danach folgt dann auch gleich noch der Unterordner <em>&#8220;plugins&#8221;</em>, in dem wir eine Datei<em> &#8220;gsweb.py&#8221; </em>anlegen.</p>
<p>Die PHP Dateien können wir erstmal in einem Unterordner <em>&#8220;php&#8221;</em> ablegen. Wie diese genannt werden, ist relativ egal, Vollständigkeitshalber nennen wir diese<em> &#8220;gssubmit.php&#8221;</em> und <em>&#8220;gsshow.php&#8221;</em>.</p>
<p><strong>» Los geht&#8217;s: Das Plugin</strong></p>
<p>Als erstes machen wir uns an die Python-Programmierarbeit. Um es einfacher zu gestalten, werde ich immer ein Stückchen Code posten und diesen dann erklären.</p>
<p>Schreiben wir uns zu allererst mal die benötigte Konfigurationsdatei, die wir gerade angelegt haben:</p>
<blockquote><p>[gsweb]</p>
<p>UpdateURL: http://glastopfblog.tld/gssubmit.php # URL to the submit script</p></blockquote>
<p>Wir ihr unschwer erkennen könnt, hat diese Konfiguration nur 2 Zeilen. Das <em>&#8220;[gsweb]&#8220;</em> dient dazu, dass der ConfigReader erkennen kann, in welchem Abschnitt er gerade ist und <em>&#8220;UpdateURL&#8221;</em> ist die URL zu eurer PHP Datei, die Daten vom Glastopf entgegen nimmt.</p>
<p>Nur noch kurz abspeichern, und die Konfiguration wäre soweit geschafft.</p>
<p>Jetzt geht es an den Käse! Die <em>&#8220;gsweb.py&#8221;</em>!</p>
<p>Schauen wir uns zunächst die Imports an:</p>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #483d8b;">&quot;&quot;&quot; Importing modules &quot;&quot;&quot;</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">datetime</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">urllib</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">urllib2</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">ConfigParser</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">threading</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">time</span><br />
<span style="color: #ff7700;font-weight:bold;">import</span> MySQLdb<br />
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">string</span><br />
<span style="color: #ff7700;font-weight:bold;">from</span> <span style="color: #dc143c;">time</span> <span style="color: #ff7700;font-weight:bold;">import</span> localtime, strftime<br />
<br />
<span style="color: #ff7700;font-weight:bold;">from</span> settings <span style="color: #ff7700;font-weight:bold;">import</span> options</div></div>
<p>Diesen Abschnitt müsste ich eigentlich nicht weiter erklären, da er wichtige Module lädt, die für die Ausführung des Plugins benötigt werden. Unteranderem &#8220;<em>urllib&#8221; </em>und <em>&#8220;urllib2&#8243;</em>, die zur Übermittlung von HTTP Daten genutzt werden.</p>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #ff7700;font-weight:bold;">class</span> toWeb<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>:</div></div>
<p>Wir bauen uns als erstes eine kleine Klasse.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> <span style="color: #0000cd;">__init__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; config = <span style="color: #dc143c;">ConfigParser</span>.<span style="color: #dc143c;">ConfigParser</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; Reading MySQL Options &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config.<span style="color: black;">read</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;conf/glastopf.cfg&quot;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">mysql_opts</span> = <span style="color: black;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;host&quot;</span> : config.<span style="color: black;">get</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;mysql&quot;</span>, <span style="color: #483d8b;">&quot;host&quot;</span><span style="color: black;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;port&quot;</span> : config.<span style="color: black;">get</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;mysql&quot;</span>, <span style="color: #483d8b;">&quot;port&quot;</span><span style="color: black;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;user&quot;</span> : config.<span style="color: black;">get</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;mysql&quot;</span>, <span style="color: #483d8b;">&quot;user&quot;</span><span style="color: black;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;pass&quot;</span> : config.<span style="color: black;">get</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;mysql&quot;</span>, <span style="color: #483d8b;">&quot;pass&quot;</span><span style="color: black;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;db&quot;</span> : config.<span style="color: black;">get</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;mysql&quot;</span>, <span style="color: #483d8b;">&quot;db&quot;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: black;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; Reading Glastopf Webupdate Options &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config.<span style="color: black;">read</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;conf/gsweb.cfg&quot;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">UpdateURL</span> = config.<span style="color: black;">get</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;gsweb&quot;</span>, <span style="color: #483d8b;">&quot;UpdateURL&quot;</span><span style="color: black;">&#41;</span></div></div>
</pre>
<p>Hier lesen wir zuerst unsere beiden Konfigurationsdateien aus, einmal die für den MySQL Server und unsere Webupdater Konfiguration. Danach starten wir einen Timer, der in einem vorgegeben Zeitraum etwas ausführt. (Dazu später noch mehr.)</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> update<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, data<span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">try</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; POST new data to the Webupdate.php &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; parameter = <span style="color: black;">&#123;</span><span style="color: #483d8b;">'update'</span> : data<span style="color: black;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; parameter = <span style="color: #dc143c;">urllib</span>.<span style="color: black;">urlencode</span><span style="color: black;">&#40;</span>parameter<span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; request = <span style="color: #dc143c;">urllib2</span>.<span style="color: black;">Request</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">UpdateURL</span>, parameter<span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; response = <span style="color: #dc143c;">urllib2</span>.<span style="color: black;">urlopen</span><span style="color: black;">&#40;</span>request<span style="color: black;">&#41;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">if</span> response.<span style="color: black;">read</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1024</span><span style="color: black;">&#41;</span> <span style="color: #66cc66;">!</span>= <span style="color: #483d8b;">&quot;SUCCESS&quot;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;GsWEB - Error: Couldn't update. (%s)&quot;</span> <span style="color: #66cc66;">%</span> <span style="color: black;">&#40;</span>response.<span style="color: black;">read</span><span style="color: black;">&#40;</span>1024<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">else</span>: <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;GsWEB: Successfully updated...&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">except</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;GsWEB - Error: Couldn't update.&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">pass</span></div></div>
</pre>
<p>Nachdem wir nun alles initialisiert und ausgelesen haben,  schauen wir uns die Funktion an, die unsere Daten vom Glastopf übermittelt.</p>
<p>Um den Glastopf vor unschönen Abstürzen zu bewahren, packen wir unseren Code in einen Try/Except-Block. Hier geben wir mit der <em>&#8220;parameter&#8221;</em>-Variable an, was an unsere <em>&#8220;gssubmit.php&#8221;</em>-Datei per POST gesendet wird. Hier gibt es eigentlich nicht mehr viel zu erklären, wir encoden die Daten, so dass wir sie danach senden können. Ist alles in Ordnung, sendet unsere PHP Datei <em>&#8220;SUCCESS&#8221;</em> zurück.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> dbconnect<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">try</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mysql = MySQLdb.<span style="color: black;">connect</span><span style="color: black;">&#40;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">mysql_opts</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;host&quot;</span><span style="color: black;">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">mysql_opts</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;user&quot;</span><span style="color: black;">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">mysql_opts</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;pass&quot;</span><span style="color: black;">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">mysql_opts</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;db&quot;</span><span style="color: black;">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">int</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">mysql_opts</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">&quot;port&quot;</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">except</span> MySQLdb.<span style="color: black;">Error</span>, e:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;MySQL Error %d: %s&quot;</span> <span style="color: #66cc66;">%</span> <span style="color: black;">&#40;</span>e.<span style="color: black;">args</span><span style="color: black;">&#91;</span>0<span style="color: black;">&#93;</span>, e.<span style="color: black;">args</span><span style="color: black;">&#91;</span>1<span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">pass</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; mysql.<span style="color: black;">threadsafety</span> = 2<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">return</span> mysql</div></div>
</pre>
<p>Auch hier ist nicht viel zu sagen. Die Funktion verbindet sich mit dem MySQL Server.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> squawk_all<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:</div></div>
</pre>
<p>Hier kommen wir noch einmal zu einer interessanten Funktion, die ein wenig näher erläutert werden sollte. Mit dieser Funktion ziehen wir unsere Daten aus der MySQL Datenbank und setzen sie zu einem einheitlichen Datensatz zusammen, der später von unserem PHP Skript bearbeitet werden kann.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; mysql = gsweb.<span style="color: black;">dbconnect</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; cursor = mysql.<span style="color: black;">cursor</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; sql1 = unique IPs, sql2 = unique paths, sql3 = attacks in 60 minutes &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; sql = <span style="color: black;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;1&quot;</span> : <span style="color: #483d8b;">&quot;&quot;&quot;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SELECT ip FROM log<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; GROUP BY ip<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;&quot;&quot;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;2&quot;</span> : <span style="color: #483d8b;">&quot;&quot;&quot;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SELECT vicpath FROM path<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;&quot;&quot;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;3&quot;</span> : <span style="color: #483d8b;">&quot;&quot;&quot;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SELECT id FROM log<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; WHERE attime &amp;gt; %s<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: black;">&#125;</span></div></div>
</pre>
<p>Hier verbinden wir uns zur MySQL Datenbank und legen dann fest, welche Queries gesendet werden sollen. Hier habe ich ein <em>Dict</em> als Variablentyp genommen, da es am sinnvollsten erscheint. (Klar, man könnte auch alle 3 SQL Queries in 3 verschiedene Variablen packen&#8230;)</p>
<p>Was die einzelnen Queries nun machen, steht im Kommentar.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; first sql query for the IPs &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; cursor.<span style="color: black;">execute</span><span style="color: black;">&#40;</span>sql<span style="color: black;">&#91;</span><span style="color: #483d8b;">'1'</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; message = <span style="color: #008000;">str</span><span style="color: black;">&#40;</span>cursor.<span style="color: black;">rowcount</span><span style="color: black;">&#41;</span> + <span style="color: #483d8b;">&quot;|&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; second sql query for the paths &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; cursor.<span style="color: black;">execute</span><span style="color: black;">&#40;</span>sql<span style="color: black;">&#91;</span><span style="color: #483d8b;">'2'</span><span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; message = message + <span style="color: #008000;">str</span><span style="color: black;">&#40;</span>cursor.<span style="color: black;">rowcount</span><span style="color: black;">&#41;</span> + <span style="color: #483d8b;">&quot;|&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; third sql query for the attacks &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; lasttime = <span style="color: black;">&#40;</span><span style="color: #dc143c;">datetime</span>.<span style="color: #dc143c;">datetime</span>.<span style="color: black;">now</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> - <span style="color: #dc143c;">datetime</span>.<span style="color: black;">timedelta</span><span style="color: black;">&#40;</span>minutes=<span style="color: #ff4500;">60</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>.<span style="color: black;">strftime</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;%Y-%m-%d %X&quot;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">try</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cursor.<span style="color: black;">execute</span><span style="color: black;">&#40;</span>sql<span style="color: black;">&#91;</span><span style="color: #483d8b;">'3'</span><span style="color: black;">&#93;</span>, <span style="color: black;">&#40;</span>lasttime,<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">except</span> MySQLdb.<span style="color: black;">Error</span>, e:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;MySQL Error %d: %s&quot;</span> <span style="color: #66cc66;">%</span> <span style="color: black;">&#40;</span>e.<span style="color: black;">args</span><span style="color: black;">&#91;</span>0<span style="color: black;">&#93;</span>, e.<span style="color: black;">args</span><span style="color: black;">&#91;</span>1<span style="color: black;">&#93;</span><span style="color: black;">&#41;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; message = message + <span style="color: #008000;">str</span><span style="color: black;">&#40;</span>cursor.<span style="color: black;">rowcount</span><span style="color: black;">&#41;</span> + <span style="color: #483d8b;">&quot;|&quot;</span> + strftime<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;%a, %d %b %Y %H:%M:%S&quot;</span>, localtime<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span></div></div>
</pre>
<p>Jetzt führen wir diese Queries aus, packen das Result davon in eine Variable und fügen zusätzlich noch einen <em>&#8220;I&#8221; </em>als Delimiter hinzu.<br />
Bei der <em>&#8220;lasttime&#8221;</em>-Variable wird festgestellt, welche Angriffe in den letzten 60 Minuten stattfanden.<br />
Wenn wir alle 3 Results zusammengesetzt haben, senden wir noch Zeit und Datum mit.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #483d8b;">&quot;&quot;&quot; close the MySQL connection and update &quot;&quot;&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; mysql.<span style="color: black;">close</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; gsweb.<span style="color: black;">update</span><span style="color: black;">&#40;</span>message<span style="color: black;">&#41;</span></div></div>
</pre>
<p>Ist alles getan, schließen wir die Verbindung zum MySQL Server und senden den Datensatz an unser PHP Skript.</p>
<p>Jetzt haben wir unsere Klasse soweit fertiggestellt. Aber bisher haben wir NUR die Klasse, die bisher noch nichts macht, ausser im Quellcode stehen. Wir brauchen also noch ein Stückchen Code, der mit der Klasse umgeht. Zu diesem Abschnitt kommen wir jetzt.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #ff7700;font-weight:bold;">def</span> dbwrite<span style="color: black;">&#40;</span>data<span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">pass</span></div></div>
</pre>
<p>Oh, eine Funktion die gar nichts macht? Erinnert euch einmal zurück, ein Stück weiter oben hatte ich erwähnt, dass wir ein wenig tricksen müssen um unser Modul als Datahandlingplugin auszugeben. Die <em>&#8220;dbwrite&#8221;</em>-Funktion wird normalerweise vom Datahandler mit Daten gefüttert, die wir jetzt theoretisch noch weiterverarbeiten könnten. Da wir aber nur eine grobe Statistik führen wollen, fällt das ganze hier flach. Die Funktion habe ich nur mit in den Code genommen, damit uns der Glastopf keine Exception ausgibt.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #ff7700;font-weight:bold;">class</span> Timed<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>:<br />
<br />
&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> action<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: #008000;">self</span>.<span style="color: black;">canceled</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; gsweb = toWeb<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; gsweb.<span style="color: black;">squawk_all</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #dc143c;">time</span>.<span style="color: black;">sleep</span><span style="color: black;">&#40;</span>1<span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">timed</span>.<span style="color: black;">start_timer</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> start_timer<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">canceled</span> = <span style="color: #008000;">False</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">timed</span> = Timed<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">t</span> = <span style="color: #dc143c;">threading</span>.<span style="color: black;">Timer</span><span style="color: black;">&#40;</span>3600, timed.<span style="color: black;">action</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">t</span>.<span style="color: black;">start</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> stop_timer<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">t</span>.<span style="color: black;">cancel</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">canceled</span> = <span style="color: #008000;">True</span></div></div>
</pre>
<p>Diese Klasse dient als Timer. Sie sorgt quasi dafür, dass jede Stunde der Updateprozess gestartet wird und Daten an unser PHP Skript geschickt werden. Bedarf eigentlich auch keiner größeren Beschreibung.</p>
<pre>
<div class="codecolorer-container python default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="python codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">gsweb = toWeb<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
timed = Timed<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
timed.<span style="color: black;">start_timer</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
<br />
<span style="color: #ff7700;font-weight:bold;">def</span> cancelit<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>:<br />
&nbsp; &nbsp; timed.<span style="color: black;">stop_timer</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><br />
<br />
<span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;GsWeb - Webupdater plugin loaded...&quot;</span><br />
<span style="color: #dc143c;">time</span>.<span style="color: black;">sleep</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span></div></div>
</pre>
<p>Puh. Gleich habens wir geschafft. Die letzten Zeilen Code sind dafür da, die Klassen zu initialisieren und eine kurze Meldung auszugeben, dass das Plugin gestartet wurde.</p>
<p><strong>» Sprachenwechsel: Annehmen der Glastopf Daten in PHP</strong></p>
<p>Das Plugin für den Glastopf wäre soweit fertig. Aber ohne unser PHP Skript kann es noch nicht viel machen. Als erstes werden wir also ein Skript schreiben, dass die Daten entgegennimmt und diese in eine Datei schreibt. Klingt einfach. Ist es auch.</p>
<p>Bevor ihr anfangt, achtet bitte darauf, dass ihr der Datei, in die euer Skript schreiben soll, die richtigen Chmod Rechte gebt. Sonst wundert ihr euch am Ende, warum es nicht geht und sucht wahrscheinlich Stunden nach den Fehler.</p>
<pre>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span>?php<br />
<span style="color: #666666; font-style: italic;">/* Options */</span><br />
<span style="color: #000088;">$data</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;gsweb.dat&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #000088;">$trusted</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;127.0.0.1&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;721.0.0.1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
</pre>
<p>In unserem PHP Skript werden wir die Optionen direkt festlegen, da eine Konfigurationsdatei hier überflüssig wäre. (Und ich ehrlich gesagt keine Ahnung hab, wie ich in PHP Konfigurationsdateien schreibe &amp; auslese.)</p>
<p>Also, die <em>&#8220;$data&#8221;</em>-Variable gibt an, in welcher Datei die Daten abgelegt werden. Dieser solltet ihr die entsprechenden Chmod Rechte geben.<br />
Bei der <em>&#8220;$trusted&#8221;</em>-Variable solltet ihr die IP Adresse von dem Server angeben, auf dem euer Glastopf läuft. Hier könnt ihr mehrere IP Adressen eintragen, die berechtigt sind, Daten zu speichern.</p>
<pre>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// Checking if the accessing IP address is a trusted source.</span><br />
<span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$trusted</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$trust</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'REMOTE_ADDR'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">==</span> <span style="color: #000088;">$trust</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000088;">$safe</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">TRUE</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">break</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #000088;">$safe</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">FALSE</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></div>
</pre>
<p>Hier fragen wir in einer Schleife ab, ob die IP Adresse die auf das Skript zugreift überhaupt berechtigt ist. Wenn das zutrifft, wird die <em>&#8220;$safe&#8221;</em>-Variable auf <em>TRUE</em> gesetzt und die Schleife unterbrochen.</p>
<pre>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;height:300px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// If the source is safe, proceed.</span><br />
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$safe</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <br />
<br />
<span style="color: #666666; font-style: italic;">// Getting the data</span><br />
<span style="color: #000088;">$submit</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$_POST</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'update'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Checking if the file is writable</span><br />
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><a href="http://www.php.net/is_writable"><span style="color: #990000;">is_writable</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$data</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #000088;">$submit</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;ERROR|NO_DATA&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/exit"><span style="color: #990000;">exit</span></a><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #000088;">$handle</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/fopen"><span style="color: #990000;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$data</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'w'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;ERROR|404&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/exit"><span style="color: #990000;">exit</span></a><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Can't write to file</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><a href="http://www.php.net/fwrite"><span style="color: #990000;">fwrite</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$handle</span><span style="color: #339933;">,</span> <span style="color: #000088;">$submit</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #009900; font-weight: bold;">FALSE</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;ERROR|403&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/exit"><span style="color: #990000;">exit</span></a><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// If wrote, SUCCESS and close the file</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;SUCCESS&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.php.net/fclose"><span style="color: #990000;">fclose</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$handle</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span> <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;&amp;lt;a href=&quot;</span><span style="color: #339933;">/</span><span style="color: #0000ff;">&quot;&amp;gt;back to home&quot;</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span><br />
?<span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span></div></div>
</pre>
<p>Wenn die Abfrage geklärt ist und alles in Ordnung ist, erhalten wir die ge<em>POST</em>eteten Daten, checken ob die Datei schreibbar ist und falls dies so ist, geben wir <em>&#8220;SUCCESS&#8221;</em> zurück.<br />
Falls unsere IP nicht berechtigt ist, wird einfach ein Link eingeblendet, der zurück auf die Hauptseite verweist. Damit wäre unser Skript, was die Daten entgegennimmt fertig.</p>
<p><strong>» Ausgeben der Daten in PHP</strong></p>
<p>Wir sind jetzt fast fertig mit unserem Plugin. Bevor wir uns dem Test widmen, müssen wir aber noch das Skript schreiben, dass den ganzen Kram ausgibt.<br />
Das ist aber eine Sache von 5 Minuten.</p>
<pre>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span>?php<br />
<span style="color: #666666; font-style: italic;">/* Options */</span><br />
<span style="color: #000088;">$data</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;gsweb.dat&quot;</span><span style="color: #339933;">;</span></div></div>
</pre>
<p>Auch hier haben wir wieder eine kurze Optionen-Sektion. Diese Gibt an, welche Datei den gelesen werden soll.</p>
<pre>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #000088;">$handle</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/fopen"><span style="color: #990000;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$data</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'r'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;Error reading glastopf informations.&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.php.net/exit"><span style="color: #990000;">exit</span></a><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000088;">$line</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/fgets"><span style="color: #990000;">fgets</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$handle</span><span style="color: #339933;">,</span> 1024<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000088;">$line</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/explode"><span style="color: #990000;">explode</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'|'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$line</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <a href="http://www.php.net/fclose"><span style="color: #990000;">fclose</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$handle</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #b1b100;">print</span> <span style="color: #0000ff;">&quot;<span style="color: #006699; font-weight: bold;">$line[0]</span> IPs in database<br />
<span style="color: #006699; font-weight: bold;">$line[1]</span> Paths in database<br />
<span style="color: #006699; font-weight: bold;">$line[2]</span> Attacks in the last hour<br />
&lt;span style=&quot;</span>font<span style="color: #339933;">-</span>size<span style="color: #339933;">:</span>9px<span style="color: #339933;">;</span><span style="color: #0000ff;">&quot;&gt;(last updated: <span style="color: #006699; font-weight: bold;">$line[3]</span>)&quot;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
?<span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span></div></div>

</span></pre>
<p>Wir öffnen die Datei, splitten die Daten nach <em>&#8220;|&#8221;</em> und geben diese dann aus.</p>
<p>Fertig!</p>
<p>Jetzt müssen wir nur noch die <em>&#8220;glastopf.cfg&#8221;</em> bearbeiten und unter <em>&#8220;dataplugins&#8221;</em> unser Plugin <em>&#8220;gsweb.py&#8221;</em> einfügen.<br />
Die <em>&#8220;gsweb.cfg&#8221;</em> wird ebenfalls im Config Ordner des Glastopfes abgelegt und unser <em>&#8220;gsweb.py&#8221;</em> in den Pluginordner.</p>
<p>Unsere beiden PHP Skripte legen wir jetzt auf unserem Webserver, auf dem auch ein Blog oder eine sonstige Webseite liegt ab. Unser Skript, dass die Daten ausliest, kann über einen PHP include leicht eingebunden werden. Sollte alles erledigt sein, kann der Glastopf wie gewohnt gestartet werden und die Meldung, dass unser Plugin geladen wurde, sollte zu sehen sein.</p>
<p><strong>» Schlusswort</strong></p>
<p>Ich hoffe das dass Tutorial verständlich rübergekommen ist und ihr euch einen Überblick darüber verschaffen konntet, wie ihr eigene Plugins für den Glastopf schreiben könnt.<br />
Falls ihr noch Fragen habt oder irgendeinen Fehler im Artikel findet, schreibt einfach einen Kommentar und ich schaue, dass ich euch helfen kann.</p>
<p>Wie gesagt, das Tutorial deckt nur einen kleinen Teil ab und zeigt, wie man anfangen kann, den Glastopf selber zu erweitern. Wenn man es richtig nimmt, ist dieses Plugin eigentlich nur eine Modifikation des Twitter Plugins. Man kann mit den Daten natürlich noch viel mehr anstellen, unteranderem könnte man ein Plugin schreiben, dass die Angriffe Live protokolliert und automatisiert Abuse Meldungen an die Hoster sendet usw.</p>
<p>Falls der Code im Tutorial nicht funktionieren solltet, wieso auch immer, für denjenigen habe ich das Plugin nochmal gezippt hochgeladen.</p>
<p>Download hier =&gt; <a href="http://botnetz.com/wp-content/gsweb-1.0.zip">gsweb.zip</a></p>
<p>So, viel Spaß mit diesem Plugin, wenn ihr mal oben links schaut, seht ihr, dass ich dieses Plugin schon benutze und es soweit 1a funktioniert. Wenn ich Lust habe, werde ich den Artikel eventuell auch noch ins Englische übersetzen.</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/tutorial-plugins-fur-den-glastopf.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Amun 0.1.8 &amp; Glastopf rev. 189</title>
		<link>http://botnetz.com/amun-0-1-8-glastopf-rev-189.html</link>
		<comments>http://botnetz.com/amun-0-1-8-glastopf-rev-189.html#comments</comments>
		<pubDate>Sun, 11 Oct 2009 15:45:58 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=271</guid>
		<description><![CDATA[Sodele. Auf meinem Server läuft derzeit eigentlich überhaupt gar nix, und da dacht ich mir, installiert ich mal die neusten Versionen der beiden Honeypots.
Amun Version 0.1.8 &#38; Glastopf rev. 189
Die neuste Amun Version kann über die Sourceforge Projektseite geladen werden, die neuste Glastopf über einen simplen Subversion Command &#8220;svn co svn://88.198.38.89:9090/branches/unstable&#8221;.
Einrichten der neuen Amun Version:
Wie [...]]]></description>
			<content:encoded><![CDATA[<p>Sodele. Auf meinem Server läuft derzeit eigentlich überhaupt gar nix, und da dacht ich mir, installiert ich mal die neusten Versionen der beiden Honeypots.</p>
<p><em>Amun Version 0.1.8 &amp; Glastopf rev. 189</em></p>
<p>Die neuste Amun Version kann über die Sourceforge Projektseite geladen werden, die neuste Glastopf über einen simplen Subversion Command <em>&#8220;svn co svn://88.198.38.89:9090/branches/unstable&#8221;</em>.</p>
<p><strong>Einrichten der neuen Amun Version:</strong></p>
<p>Wie schon in der Anleitung, die ich mal geschrieben hatte, müssen hier eigentlich nur die Konfigurationsdateien verändert werden, welche sich im Unterordner &#8220;conf/&#8221; befinden.<br />
Ich geh mal nicht genauer auf die <em>amun.conf</em> ein, da dies alles in der Anleitung steht.</p>
<p>Wenn das erledigt ist, kann wie gewohnt per amun_server.py gestartet werden.</p>
<p><strong>Einrichten des neuen Glastopfes:</strong></p>
<p>Hier finden wir die Config auch im Unterordner &#8220;conf/&#8221;. Die <em>glastopf.cfg</em> ist hierbei die Hauptkonfiguration.</p>
<p>Dort können wir jetzt unter &#8220;ip&#8221; und &#8220;port&#8221; angeben, unter welcher IP und auf welchem Port der Glastopf lauscht, falls dem Server mehrere IPs zugeteilt sind.<br />
Bei dem Plugins-Abschnitt kann man jetzt dynamisch Plugins dazufügen, wie man es bei Amun gewohnt ist. Im MySQL Abschnitt kommen die Zugangsdaten für die MySQL DB rein.<br />
Unter Misc kann man eine eigene Fakeseite angeben, den Whois Server und ob der neue oder der alte Parser verwendet werden soll.</p>
<p>Die weiteren Abschnitte sollten sich dann auch von alleine erklären.</p>
<p>Schön finde ich die IRC und die Twitter Funktion. <img src='http://botnetz.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/amun-0-1-8-glastopf-rev-189.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Kennt ihr schon den neuen Virenprkschtz?</title>
		<link>http://botnetz.com/kennt-ihr-schon-den-neuen-virenprkschtz.html</link>
		<comments>http://botnetz.com/kennt-ihr-schon-den-neuen-virenprkschtz.html#comments</comments>
		<pubDate>Thu, 24 Sep 2009 06:27:14 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Die Welt]]></category>
		<category><![CDATA[virenprkschtz]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=267</guid>
		<description><![CDATA[Gestern von nem Kollegen drauf aufmerksam gemacht geworden&#8230; und ich muss sagen, ich hab schon lang nicht mehr so gelacht. Eigentlich sollte man ja über sowas nicht lachen, aber entweder tut der Ersteller des Videos einfach nur so doof und will seinen Virus wirklich mit dem gescheiterten Versuch verbreiten oder er ist es wirklich. Aufjedenfall [...]]]></description>
			<content:encoded><![CDATA[<p>Gestern von nem Kollegen drauf aufmerksam gemacht geworden&#8230; und ich muss sagen, ich hab schon lang nicht mehr so gelacht. Eigentlich sollte man ja über sowas nicht lachen, aber entweder tut der Ersteller des Videos einfach nur so doof und will seinen Virus wirklich mit dem gescheiterten Versuch verbreiten oder er ist es wirklich. Aufjedenfall sollte er mal überlegen, sich bei einem Logopäden vorzustellen. Wirklich. Aber hey, das Video made my day. Danke dafür, an den Ersteller. <img src='http://botnetz.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/V624uZE5Eeg&amp;hl=de&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/V624uZE5Eeg&amp;hl=de&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
Schon am wundern, warum ich mal wieder wenig blogge? Liegt wohl daran das ich in letzter Zeit eigentlich den ganzen Tag nur am Diablo 2 zocken bin. Hachja, das Spiel ist so alt, aber trotzdem verfällt man es. Mal sehen, vielleicht blogg ich mal irgendwas über das Spiel.</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/kennt-ihr-schon-den-neuen-virenprkschtz.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Three Strikes Regelung für Politiker?</title>
		<link>http://botnetz.com/three-strikes-regelung-fur-politiker.html</link>
		<comments>http://botnetz.com/three-strikes-regelung-fur-politiker.html#comments</comments>
		<pubDate>Sat, 22 Aug 2009 23:06:11 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Politik]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=258</guid>
		<description><![CDATA[Heute bin ich über einen schönen Beitrag auf fefe&#8217;s Blog gestoßen. =&#62; http://blog.fefe.de/?ts=b4713e43
Fefe hatte eine Petition an den Petitionsausschuß gereicht, die interessante Dinge beinhaltet:
Wir erinnern uns: Vor einiger Zeit wurde in Frankreich eine Three Strikes Regelung durchgeboxt. Diese bestimmt, dass Filesharer nach dem ersten Verstoß angeschrieben werden, nach dem zweiten eine Mahnung bekommen und nach [...]]]></description>
			<content:encoded><![CDATA[<p>Heute bin ich über einen schönen Beitrag auf fefe&#8217;s Blog gestoßen. =&gt; <a href="http://blog.fefe.de/?ts=b4713e43">http://blog.fefe.de/?ts=b4713e43</a></p>
<p>Fefe hatte eine Petition an den Petitionsausschuß gereicht, die interessante Dinge beinhaltet:</p>
<p>Wir erinnern uns: Vor einiger Zeit wurde in Frankreich eine Three Strikes Regelung durchgeboxt. Diese bestimmt, dass Filesharer nach dem ersten Verstoß angeschrieben werden, nach dem zweiten eine Mahnung bekommen und nach dem dritten wird der Internetanschluß gekappt. Allerdings darf dieser noch schön weiter bezahlt werden, bis zum Vertragsende.</p>
<p>Daher kam also die Idee zu dieser Petition. Warum nicht sowas für Politiker einführen? Wenn ein Politiker versucht 3 mal für ein verfassungswiedriges Gesetz zu stimmen, fliegt er einfach ganz simpel raus. Finde ich sehr gut. Wer weiß wieviele Politiker dann wohl vom Bild verschwinden würden? <em>Zensursula&#8230; Schäuble&#8230;</em> und wie die noch so alle heißen.</p>
<p>Die Petition selber wurde leider abgelehnt. War ja auch irgendwie nicht anders zu erwarten. Naja, Fefe möchte damit eine Diskussion anfechten, wie man den Fraktionszwang bei Politiker loswerden kann.</p>
<p>Den gesamten Petitionsvorschlag gibt es hier: <a href="http://ptrace.fefe.de/petition.txt">http://ptrace.fefe.de/petition.txt</a></p>
<p>Wer aber zu faul zum lesen ist, dem gebe ich hier mal einen kleinen Überblick, was dort so drin steht:</p>
<blockquote>
<pre>Der Deutsche Bundestag möge beschließen: Abgeordnete, die dreimal für
ein später vom Bundesverfassungsgericht als (ganz oder in Teilen)
verfassungswidrig eingestuftes Gesetz stimmen, werden wie folgt
sanktioniert:
  a) Verlust des Mandates, des Sitzes im Parlament und der
     Leistungsansprüche für diese,
  b) Verlust des passiven Wahlrechts für diese und die nächste
     Legislaturperiode.
Ein so verfallener Sitz bleibt leer. Eine Neubesetzung findet in der
laufenden Legislaturperiode nicht statt.</pre>
</blockquote>
<p>Als Begründung wird hierbei folgendes angegeben:</p>
<blockquote>
<pre>Abgeordnete im Bundestag sind laut Art 38 GG bei Abstimmungen nur ihrem
Gewissen verpflichtet.  In der Praxis richten sich Abgeordnete aber
hauptsächlich nach der Vorgabe der Fraktion, die in Ausschüssen oder auf
Fraktionssitzungen ausgehandelt wurde.</pre>
</blockquote>
<p>Weiterhin erfährt man:</p>
<blockquote>
<pre>Das eigentliche Ziel ist die Abschaffung des "Fraktionszwangs".  Da
dieser aber offiziell nicht existiert, droht diese Petition Abgeordneten
mit persönlichen Konsequenzen, wenn sie für ein verfassungswidriges
Gesetz stimmen.  Gesetze müssen so geschrieben werden, dass sie klar
verfassungsgemäß sind, nicht dass sie haarscharf an die Grenze oder gar
darüber hinaus gehen.</pre>
</blockquote>
<p>Nun denn. Schade das aus der Petition nichts wurde. Aber hoffentlich bringt es etwas, manchen mal zum denken zu überreden oder ins Gewissen zu reden.</p>
<hr />
Achja. Man sieht mal wieder, wie toll doch die CDU ist. In Rinteln wurden 6 Plakate der Piratenpartei mit Plakate der Senioren Union überklebt. Unfassbar und dreist sowas. Damit kann man sich natürlich noch unbeliebter machen, als man schon ist. Bilder gibt&#8217;s hier =&gt; <a href="http://www.spitblog.de/2009/08/21/cdu-ueberklebt-plakate-der-piraten/">http://www.spitblog.de/2009/08/21/cdu-ueberklebt-plakate-der-piraten/</a></p>
<p>Falls du nicht weißt, was die Piratenpartei überhaupt ist, bist du hier gut aufgehoben. =&gt; <a href="http://www.piratenpartei.de/">http://www.piratenpartei.de/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/three-strikes-regelung-fur-politiker.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mein neues Botnetz!</title>
		<link>http://botnetz.com/mein-neues-botnetz.html</link>
		<comments>http://botnetz.com/mein-neues-botnetz.html#comments</comments>
		<pubDate>Thu, 20 Aug 2009 18:26:37 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Die Welt]]></category>
		<category><![CDATA[Piratenpartei]]></category>
		<category><![CDATA[Politik]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=253</guid>
		<description><![CDATA[Nach langer Inaktivitätszeit melde ich mich hier mal wieder zurück. Immerhin schon wieder über nen Monat kein neuer Eintrag gewesen.
Liegt wohl damit zusammen, dass ich mich in letzter Zeit weniger mit Sicherheitsthemen beschäftige, sondern eher ein wenig mehr mit Politik und anderen Sachen im Leben.
Wie ihr bemerkt, hab ich das Design des Blogs mal wieder [...]]]></description>
			<content:encoded><![CDATA[<p>Nach langer Inaktivitätszeit melde ich mich hier mal wieder zurück. Immerhin schon wieder über nen Monat kein neuer Eintrag gewesen.</p>
<p>Liegt wohl damit zusammen, dass ich mich in letzter Zeit weniger mit Sicherheitsthemen beschäftige, sondern eher ein wenig mehr mit Politik und anderen Sachen im Leben.<br />
Wie ihr bemerkt, hab ich das Design des Blogs mal wieder geändert, so das es ein wenig mehr nach Web 2.0 ausschaut. Ich werde mich auch in nächster Zeit weniger mit Sicherheitsthemen beschäftigen und den Blog sozusagen in einen allgemeinen Blog umbauen. Ab und an mal was über Politik, ab und an mal was über Programmierung, ab und zu mal was aus meinem Leben und ein wenig Sicherheitskram. :]</p>
<p>Meine Projekte werde ich auch neu organisieren, so sieht es aus, dass das Amun log_irc Modul komplett abgebrochen wird. Die Cyberhackers Geschichte wird demnach mit einer ganz neuen Geschichte ersetzt, die ich auch schon angefangen habe und eventuell auch plane später als Buch zu veröffentlichen. Weitere Projekte werd ich dann vorstellen, wenn die Zeit reif ist.</p>
<p style="text-align: left;">Und was geht sonst so in der Welt? Als ich heute gegen 17 Uhr aufgestanden bin und erstmal runter in die Küche bin, funkelte mich ein Brief an.<br />
<a href="http://s1.pic24.net/1857/DSC00728.JPG"><img class="aligncenter" title="CDU Post" src="http://s1.pic24.net/thumb/1857/DSC00728.JPG" alt="" width="150" height="150" /></a></p>
<p>&#8220;Juche!&#8221;, dacht ich mir. Jetzt schickt mir schon die CDU Post. Nach kurzem überlegen, ob ich den Brief nicht gleich zerreiße und verbrenne, hab ich ihn dann einfach mal geöffnet und geschaut ob man nicht ein wenig lachen kann.</p>
<p>Der Inhalt vom Brief war schlicht, ein Prospekt zur Jungen Union und ein Brief, der sogar persönlich an mich gerichtet war mit der Aufforderung wählen zu gehen.</p>
<p style="text-align: center;"><a href="http://s1.pic24.net/1858/DSC00731.JPG"><img class="alignnone" title="Prospekt 1" src="http://s1.pic24.net/thumb/1858/DSC00731.JPG" alt="" width="150" height="150" /></a><a href="http://s1.pic24.net/1859/DSC00730.JPG"><img class="alignnone" title="Prospekt 2" src="http://s1.pic24.net/thumb/1859/DSC00730.JPG" alt="" width="150" height="150" /></a><a href="http://s1.pic24.net/1860/DSC00729.JPG"><img class="alignnone" src="http://s1.pic24.net/thumb/1860/DSC00729.JPG" alt="" width="150" height="150" /></a></p>
<p>Gut, ich muss zugeben, was im Prospekt steht hört sich ja ganz vernünftig an. Dennoch, verabscheue ich alles was mit CDU und SPD zu tun hat, aus bestimmten Gründen, die soweit jeder kennen sollte. Nun denn, ich finde, hier sollte sich mal ein Pirat als Bürgermeisterkandidat aufstellen lassen. Der Brief von der Jungen Union wird dann aufjedenfall demnächst einfach im Abfall landen. Die Bürgermeisterwahl geht mir sowieso am A**** vorbei, also was solls? Laut Wikipedia sind bei der Komunalwahl jedenfalls folgende Parteien wählbar:</p>
<p><small><a title="CDU Nordrhein-Westfalen" href="http://de.wikipedia.org/wiki/CDU_Nordrhein-Westfalen">CDU</a>, <a title="SPD Nordrhein-Westfalen" href="http://de.wikipedia.org/wiki/SPD_Nordrhein-Westfalen">SPD</a>, <a title="Bündnis 90/Die Grünen" href="http://de.wikipedia.org/wiki/B%C3%BCndnis_90/Die_Gr%C3%BCnen">Grüne</a>, <a title="FDP NRW" href="http://de.wikipedia.org/wiki/FDP_NRW">FDP</a>,<br />
<a title="Die Linke" href="http://de.wikipedia.org/wiki/Die_Linke">Die Linke</a>, <a title="Ökologisch-Demokratische Partei" href="http://de.wikipedia.org/wiki/%C3%96kologisch-Demokratische_Partei">ödp</a>, <a title="Deutsche Kommunistische Partei" href="http://de.wikipedia.org/wiki/Deutsche_Kommunistische_Partei">DKP</a>, <a title="Deutsche Volksunion" href="http://de.wikipedia.org/wiki/Deutsche_Volksunion">DVU</a>,<br />
<a title="Die Republikaner" href="http://de.wikipedia.org/wiki/Die_Republikaner">REP</a>, <a title="Nationaldemokratische Partei Deutschlands" href="http://de.wikipedia.org/wiki/Nationaldemokratische_Partei_Deutschlands">NPD</a>, <a title="Deutsche Zentrumspartei" href="http://de.wikipedia.org/wiki/Deutsche_Zentrumspartei">ZENTRUM</a>, <a title="Die Grauen – Graue Panther" href="http://de.wikipedia.org/wiki/Die_Grauen_%E2%80%93_Graue_Panther">GRAUE</a>,<br />
<a title="STATT Partei" href="http://de.wikipedia.org/wiki/STATT_Partei">STATT</a>, <a title="Humanistische Partei" href="http://de.wikipedia.org/wiki/Humanistische_Partei">HP</a>, <a title="Liberale Demokraten" href="http://de.wikipedia.org/wiki/Liberale_Demokraten">LD</a>, AMP,<br />
Bürgerbewegung pro NRW, DSP,<br />
FAMILIE, FAKT, Die Tierschutzpartei,<br />
ÖkoLi, Offensive D, PBP</small></p>
<p>Und da man anscheinend die Piraten nicht wählen kann, werd ich entweder überhaupt nicht wählen oder einfach zufällig mein Kreuz setzen. Solang ich dabei nicht die CDU oder SPD oder rechtsradikale Parteien stärke, ists mir recht. Vielleicht sind die Grünen ja wählbar&#8230;</p>
<p>Aufjedenfall prangt vor meiner Haustür am Laternenmast ein abartiges SPD Plakat und auf der anderen Straßenseite genau das Gleiche.</p>
<p>Kann man wohl nichts machen. Muss man mit leben, auch wenn ich das Teil liebend gern brennen sehen würde. Wenn ich mich dabei nur nicht strafbar machen würde. :/</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/mein-neues-botnetz.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trauer um das Freie Internet Deutschlands</title>
		<link>http://botnetz.com/trauer-um-das-freie-internet-deutschlands.html</link>
		<comments>http://botnetz.com/trauer-um-das-freie-internet-deutschlands.html#comments</comments>
		<pubDate>Sat, 11 Jul 2009 07:32:38 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Die Welt]]></category>
		<category><![CDATA[Neuigkeiten]]></category>
		<category><![CDATA[cdu]]></category>
		<category><![CDATA[kipo]]></category>
		<category><![CDATA[sperren]]></category>
		<category><![CDATA[zensur]]></category>
		<category><![CDATA[zensursula]]></category>

		<guid isPermaLink="false">http://botnetz.com/trauer-um-das-freie-internet-deutschlands.html</guid>
		<description><![CDATA[Endlich haben wir&#8217;s vollbracht. Deutschland entwickelt sich langsam aber sicher zu einem totalen Überwachungsstaat, man könnte auch meinen das geheime Anhänger der Stasi rumschwirren und diese Politik erneut wieder aufbauen wollen. Aber naja, verschaffen wir uns doch mal einen kurzen Überblick darüber, was Deutschland jetzt schon alles für seine gläserne Bürger tut.
Auf der einen Seite [...]]]></description>
			<content:encoded><![CDATA[<p>Endlich haben wir&#8217;s vollbracht. Deutschland entwickelt sich langsam aber sicher zu einem totalen Überwachungsstaat, man könnte auch meinen das geheime Anhänger der Stasi rumschwirren und diese Politik erneut wieder aufbauen wollen. Aber naja, verschaffen wir uns doch mal einen kurzen Überblick darüber, was Deutschland jetzt schon alles für seine gläserne Bürger tut.</p>
<p>Auf der einen Seite haben wir die Vorratsdatenspeicherung, welche besagt das deutsche ISPs sämtliche Daten der Kunden, also Wer, wann mit wem telefoniert hat und wie lange das  Gespräch dauerte oder wann Kunde X sich wo ins Internet eingeloggt hat. Und hey, schlaue CDU Politiker sprachen sogar zwischenzeitlich schonmal davon das man das gesamte Surfverhalten der Nutzer aufzeichnet. Wuhuuu. Weitere Informationen zur Vorratsdatenspeicherung gibt&#8217;s hier =&gt; <a href="http://www.vorratsdatenspeicherung.de/content/view/46/42/lang,de/">http://www.vorratsdatenspeicherung.de/content/view/46/42/lang,de/</a></p>
<p>Das zweite, was vor kurzem erst in den News stand ist, dass die deutsche Polizei nun der USA Zugriff auf ihre Akten gibt. Sehr schön, jetzt flattern unsere Daten also noch in der USA rum. Auch wenn man meint, Deutschland hätte volle Kontrolle darüber und könnte den Amerikanern sagen, sie sollen die Akten löschen, wer ist sich sicher, dass sie es auch tun?</p>
<p>Und zu guter letzt, das tollste der 3 neuen Gesetze. <em><strong>INTERNETZENSUR</strong></em>.<em><strong> </strong>Sind wir denn hier in China?<br />
</em>Ursula &#8220;Zensursula&#8221; von der Leyen hatte eines Tages eine brilliante Idee! Warum nicht einfach geile Sperren einführen um Milliarden, wenn nicht sogar alle Kinder dieser Welt vor Vergewaltigung zu schützen. Oh super. Nur der Haken ist, es wird KEIN Kind geschützt. Im Grunde ist das Gesetz sinnlos. Es sperrt vielleicht Kinderpornographische Inhalte auf DNS Basis, allerdings kann jeder User, der sich ein wenig auskennt diese mit Leichtigkeit umgehen. Was man hier sieht, sind einfach nur Argumente um eine Basis für Internetzensur zu schaffen. Und warum nicht einfach Kinderpornographie als Hauptargument nehmen? Passt ja perfekt dazu und wird dazu noch von jedem verächtet. Doch wird es so sein, dass in absehbarer Zeit definitiv auch andere Seiten, die KEINEN Kinderpornographischen Inhalt vorweisen auf den Sperrlisten stehen. Aber hey, laut Zensursula schadet das ganze Internet ja den Kindern dieser Welt. Nun, okay. Mal sehen wann die deutsche Zensurliste auf Wikileaks zu finden ist. Aufjedenfall bin ich oben an der Decke, wenn ich merke, dass unschuldige Webseiten, die nichts mit Kinderpornographie zu tun haben gesperrt sind. =&gt; <a href="http://www.heise.de/newsticker/Gesetz-zu-Web-Sperren-passiert-den-Bundesrat--/meldung/141849">http://www.heise.de/newsticker/Gesetz-zu-Web-Sperren-passiert-den-Bundesrat&#8211;/meldung/141849</a></p>
<p><span style="font-size: 16px;">Aber wartet mal, ihr Politiker.</span></p>
<p style="text-align: center;"><span style="font-size: 18px;">Wieso sperrt ihr den ganzen Kram überhaupt nur? Wäre es nicht sinnvoller diesen zu löschen? Typisch.</span></p>
<p style="text-align: center;"><span style="font-size: 18px;"><br />
</span></p>
<p style="text-align: center;"><span style="font-size: 25px;"><span style="text-decoration: underline;">LÖSCHEN STATT SPERREN. STOPPT DIE INTERNETZENSUR.</span><br />
</span></p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/trauer-um-das-freie-internet-deutschlands.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Glastopf: Top 20 Attacker &#8211; Mai</title>
		<link>http://botnetz.com/glastopf-top-20-attacker-mai.html</link>
		<comments>http://botnetz.com/glastopf-top-20-attacker-mai.html#comments</comments>
		<pubDate>Mon, 18 May 2009 20:29:11 +0000</pubDate>
		<dc:creator>duke</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[attacker]]></category>
		<category><![CDATA[glastopf]]></category>
		<category><![CDATA[rfi]]></category>
		<category><![CDATA[top 20]]></category>

		<guid isPermaLink="false">http://botnetz.com/?p=235</guid>
		<description><![CDATA[Hallo,
ich wollte heute nochmal einen kleinen Statistiküberblick über den Glastopf geben.
Hier gezeigt, sind die Top 20 Attacker. Man sieht schön, wie versucht wird über einfache Sicherheitslücken das System zu kompromittieren.
Auch erstaunlich ist, dass ein Attacker es über 60 mal versucht hat.



IP
Req
Count


121.173.130.xxx
/index.php?mosConfig_absolute_path=XXX??
60


74.81.88.xxx
/index.php?pagina=XXX??
35


217.18.76.xxx
/index.php?mosConfig_absolute_path=XXX??
31


75.127.70.xxx
/index.php?_SESSION%5bdocroot_path%5d=XXX??
30


72.52.230.xxx
/index.php?DOCUMENT_ROOT=XXX????
29


24.39.162.xxx
/index.php?DOCUMENT_ROOT=XXX????
27


194.181.2.xxx
/index.php?noSet=0&#38;%3bincludedir=XXX?????
26


116.50.163.xxx
/index.php?appserv_root=XXX?
23


87.107.86.xxx
/index.php?DOCUMENT_ROOT=XXX????
22


70.86.169.xxx
/index.php?appserv_root=XXX????
22


85.214.24.xxx
/index.php?error=XXX???
22


202.75.4.xxx
/index.php?error=XXX??
22


121.165.73.xxx
/index.php?nuseo_dir=XXX???
21


190.144.44.xxx
/index.php?noSet=0&#38;includedir=XXX???
20


80.231.93.xxx
/index.php?path_to_bt_dir=XXX????
19


145.253.245.xxx
/index.php?error=XXX??
19


67.220.201.xxx
/index.php?config%5bppa_root_path%5d=XXX???
19


207.58.185.xxx
/index.php?alpath=XXX???
17


212.59.11.xxx
/index.php?rootdir=XXX??
16


77.221.130.xxx
/index.php?autoLoadConfig%5b999%5d%5b0%5d%5bautoType%5d=include&#38;autoLoadConfig%5b999%5d%5b0%5d%5bloadFile%5d=XXX???
16



Wirft man einen Blick auf die Victims, sieht man, dass dort diverse Freehoster genutzt werden, [...]]]></description>
			<content:encoded><![CDATA[<p>Hallo,</p>
<p>ich wollte heute nochmal einen kleinen Statistiküberblick über den Glastopf geben.</p>
<p>Hier gezeigt, sind die Top 20 Attacker. Man sieht schön, wie versucht wird über einfache Sicherheitslücken das System zu kompromittieren.<br />
Auch erstaunlich ist, dass ein Attacker es über 60 mal versucht hat.</p>
<table style="border: 1px solid #000000; height: 240px;" border="0" width="505">
<tbody>
<tr>
<td style="border: 1px solid #000000; background-color: #999FFF;" align="center"><strong>IP</strong></td>
<td style="border: 1px solid #000000; background-color: #999FFF;" align="center"><strong>Req</strong></td>
<td style="border: 1px solid #000000; background-color: #999FFF;" align="center"><strong>Count</strong></td>
</tr>
<tr>
<td>121.173.130.xxx</td>
<td>/index.php?mosConfig_absolute_path=XXX??</td>
<td>60</td>
</tr>
<tr>
<td>74.81.88.xxx</td>
<td>/index.php?pagina=XXX??</td>
<td>35</td>
</tr>
<tr>
<td>217.18.76.xxx</td>
<td>/index.php?mosConfig_absolute_path=XXX??</td>
<td>31</td>
</tr>
<tr>
<td>75.127.70.xxx</td>
<td>/index.php?_SESSION%5bdocroot_path%5d=XXX??</td>
<td>30</td>
</tr>
<tr>
<td>72.52.230.xxx</td>
<td>/index.php?DOCUMENT_ROOT=XXX????</td>
<td>29</td>
</tr>
<tr>
<td>24.39.162.xxx</td>
<td>/index.php?DOCUMENT_ROOT=XXX????</td>
<td>27</td>
</tr>
<tr>
<td>194.181.2.xxx</td>
<td>/index.php?noSet=0&amp;%3bincludedir=XXX?????</td>
<td>26</td>
</tr>
<tr>
<td>116.50.163.xxx</td>
<td>/index.php?appserv_root=XXX?</td>
<td>23</td>
</tr>
<tr>
<td>87.107.86.xxx</td>
<td>/index.php?DOCUMENT_ROOT=XXX????</td>
<td>22</td>
</tr>
<tr>
<td>70.86.169.xxx</td>
<td>/index.php?appserv_root=XXX????</td>
<td>22</td>
</tr>
<tr>
<td>85.214.24.xxx</td>
<td>/index.php?error=XXX???</td>
<td>22</td>
</tr>
<tr>
<td>202.75.4.xxx</td>
<td>/index.php?error=XXX??</td>
<td>22</td>
</tr>
<tr>
<td>121.165.73.xxx</td>
<td>/index.php?nuseo_dir=XXX???</td>
<td>21</td>
</tr>
<tr>
<td>190.144.44.xxx</td>
<td>/index.php?noSet=0&amp;includedir=XXX???</td>
<td>20</td>
</tr>
<tr>
<td>80.231.93.xxx</td>
<td>/index.php?path_to_bt_dir=XXX????</td>
<td>19</td>
</tr>
<tr>
<td>145.253.245.xxx</td>
<td>/index.php?error=XXX??</td>
<td>19</td>
</tr>
<tr>
<td>67.220.201.xxx</td>
<td>/index.php?config%5bppa_root_path%5d=XXX???</td>
<td>19</td>
</tr>
<tr>
<td>207.58.185.xxx</td>
<td>/index.php?alpath=XXX???</td>
<td>17</td>
</tr>
<tr>
<td>212.59.11.xxx</td>
<td>/index.php?rootdir=XXX??</td>
<td>16</td>
</tr>
<tr>
<td>77.221.130.xxx</td>
<td>/index.php?autoLoadConfig%5b999%5d%5b0%5d%5bautoType%5d=include&amp;autoLoadConfig%5b999%5d%5b0%5d%5bloadFile%5d=XXX???</td>
<td>16</td>
</tr>
</tbody>
</table>
<p>Wirft man einen Blick auf die Victims, sieht man, dass dort diverse Freehoster genutzt werden, aber auch einige kompromittierte Server wie eine Pornoseite &#8220;<em>sexclusiv.eu</em>&#8221; oder eine polnische BMW Fanseite &#8220;<em>bmw-center.com.pl</em>&#8220;. Aber auch deutsche Server sind unter den Victims. So findet man hier eine private Webseite die nicht mehr gepflegt wird &#8220;<em>dirk-gerber.de</em>&#8221; oder ein Ärzte Netzwerk &#8220;<em>aene.de</em>&#8220;. Ich find es erschreckend, dass sich niemand um seine Server kümmert und auch mal einen Blick durch den Webspace fliegen lässt. Theoretisch sollten einen doch unbekannte Dateien auffallen?</p>
]]></content:encoded>
			<wfw:commentRss>http://botnetz.com/glastopf-top-20-attacker-mai.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
