Benutzer-Werkzeuge

Webseiten-Werkzeuge


cookbook:logs

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
cookbook:logs [2014/09/24 18:26]
shadowcat [User-Agents auswerten]
cookbook:logs [2014/09/24 00:00] (aktuell)
Zeile 69: Zeile 69:
  
     "​c:​\Program Files (x86)\Log Parser 2.2\LogParser.exe"​ "​select statuscode,​remotehostname FROM d:​\xampp\apache\logs\access.log WHERE user-agent is null order by statuscode asc" -i:NCSA -o:datagrid     "​c:​\Program Files (x86)\Log Parser 2.2\LogParser.exe"​ "​select statuscode,​remotehostname FROM d:​\xampp\apache\logs\access.log WHERE user-agent is null order by statuscode asc" -i:NCSA -o:datagrid
-===== Links ===== 
  
-http://technet.microsoft.com/en-us/library/ee692937.aspx+==== Ausgabe als HTML ==== 
 + 
 +Im Gegensatz zu den meisten anderen Formaten ist die Ausgabe als HTML etwas komplizierter. LogParser benötigt hierzu ein Template, in das es seine ermittelten Daten einfüllen kann. Wer aber BC-Templates kennt, kann auch hiermit umgehen. ​:
 + 
 +Nehmen wir als Beispiel unsere Suche nach dem potentiell "​bösen"​ Querystring mit "​SELECT"​Diesen möchten wir als HTML-Tabelle ausgeben und diese auch ein wenig '​hübsch machen'​. 
 + 
 +Also bauen wir uns zunächst mal unsere Vorlage: 
 + 
 +<sxh html> 
 +<​lpheader>​ 
 +<​html>​ 
 +    <​head>​ 
 +        <​title>​Potentiell böse Querystrings<​/title> 
 +        <style type="​text/​css">​ 
 +        body{background-color:#​fff;​} 
 +        table{border-collapse:​collapse;​} 
 +        th,​td{border:​1px solid #000;} 
 +        th{background-color:#​ccc;​} 
 +        </style> 
 +    </head> 
 +    <​body>​ 
 +        <​table>​ 
 +            <​thead>​ 
 +                <​tr>​ 
 +                    <​th>​Anzahl</​th>​ 
 +                    <​th>​Remote Host</​th>​ 
 +                    <​th>​Query</​th>​ 
 +                </​tr>​ 
 +            </​thead>​ 
 +            <​tbody>​ 
 +</​lpheader>​ 
 +<​lpbody>​ 
 +            <​tr>​ 
 +                <​td>​%Anzahl%</​td>​ 
 +                <​td>​%remotehostname%</​td>​ 
 +                <​td>​%request%</​td>​ 
 +            </​tr>​ 
 +</​lpbody>​ 
 +<​lpfooter>​ 
 +        </​tbody>​ 
 +    </​table>​ 
 +</​body>​ 
 +</​html>​ 
 +</​lpfooter>​ 
 +</​sxh>​ 
 + 
 +Die Markups <​LPHEADER>,​ <​LPBODY>​ und <​LPFOOTER>​ dienen dem LogParser dazu, die einzelnen Bereiche des Templates zu erkennen. <​LPBODY>​ wird für jede Zeile der Ausgabe wiederholt, beinhaltet daher also auch die Platzhalter für die Werte. Die Platzhalter entsprechen hierbei den "​Spaltennamen"​. 
 + 
 +Speichern wir nun diese Datei als ''​querystrings.tpl''​. Der Aufruf für den LogParser muß nun um zwei Werte erweitert werden: 
 + 
 +  * Den Namen der HTML-Datei (sonst wird alles auf der Kommandozeile ausgegeben) 
 +  * Den Namen des Templates 
 + 
 +Außerdem ändern wir das Ausgabeformat in ''​-o:​TPL''​ 
 + 
 + 
 +"​c:​\Program Files (x86)\Log Parser 2.2\LogParser.exe"​ "​select count(*) as Anzahl, remotehostname,​ request FROM d:​\xampp\apache\logs\access.log TO output.html WHERE request LIKE '​%select%'​ GROUP BY remotehostname,​request ORDER BY Anzahl DESC" -i:NCSA -o:TPL -tpl:​querystrings.tpl 
 + 
 +Ergebnis ist nun eine Datei ''​output.html''​ mit einer Tabelle, die nach Remote Host und Querystring gruppiert und nach Anzahl sortiert die potentiellen Angriffe auflistet. 
 + 
 +Natürlich ist hier noch etwas Feintuning am Template und ggfs. auch an der Abfrage denkbar;) 
 +===== Links =====
  
 +http://​technet.microsoft.com/​en-us/​library/​ee692937.aspx\\  ​
 +http://​mlichtenberg.wordpress.com/​2011/​02/​03/​log-parser-rocks-more-than-50-examples/​
cookbook/logs.1411575960.txt.gz · Zuletzt geändert: 2014/09/24 00:00 (Externe Bearbeitung)