Suchen
Inside Wiki
Nützliche Links




 
phpforum.de bei Facebook
 
phpforum.de bei Twitter
 

Zurück   PHP Forum: phpforum.de > phpforum.de Wiki > phpforum.de Wiki

PHP Wiki Dieses Wiki sammelt Lösungen, zu Problemen, welche immer wieder im Forum auftauchen.

 
 
Artikel-Optionen Ansicht
  #1  

Standard Suchmaschinen

 
 

Inhalte

Gute Suchmaschinen


Als typische Stellvertreter dieser Gattung seien hier mal Google und Yahoo genannt. Es gibt noch Unmengen weitere, welche man mit Fug und Recht als gut einordnen kann.
Gute Suchmaschinen halten sich an folgende Regeln:
  • Sagen im USER_AGENT wer sie sind
  • lesen die robots.txt bevor sie die Domain indexieren
  • senden/verwalten keine Cookies
  • senden keine Formulare ab(bisher)
  • ignorieren JavaScript
  • ignorieren CSS
  • sie folgen nur Links und Header Weiterleitungen


Böse Suchmaschinen


Im gegensatz zu den guten, halten sich diese nicht an die Benimmregeln für Suchmaschinen. Viele von ihnen tarnen sich als normaler Browser um nicht erkannt zu werden. Es gibt keine wirksamme Methode um eine böse Suchmaschine wirklich als solche zu erkennen.
Was tun böse SUMAs?
  • suchen E-Mail Adressen, welche dann an Spammer weitergeleitet werden
  • suchen angreifbare Formulare um dann z.B. Spamm in Gästebüchern zu hinterlassen
  • Oft sind sie der erste Schritt für einen, wie auch immer gearteten, Angriff auf die Website
Böse Sumas versuchen oft auch "verborgene" Ordner zu entdecken.
Das zeigt sich zum Beispiel in den Apache Logdateien:
Code:
[Sat Apr 19 17:57:21 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.3-pl1
[Sat Apr 19 17:57:21 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.4-rc1
[Sat Apr 19 17:57:21 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.4-pl1
[Sat Apr 19 17:57:22 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.4-pl2
[Sat Apr 19 17:57:22 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.4-pl3
[Sat Apr 19 17:57:22 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.4-pl4
[Sat Apr 19 17:57:23 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.6.4
[Sat Apr 19 17:57:23 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.7.0-beta1
[Sat Apr 19 17:57:23 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.7.0-rc1
[Sat Apr 19 17:57:23 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.7.0-pl1
[Sat Apr 19 17:57:24 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.7.0-pl2
[Sat Apr 19 17:57:24 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.7.0
[Sat Apr 19 17:57:24 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0-beta1
[Sat Apr 19 17:57:25 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0-rc1
[Sat Apr 19 17:57:25 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0-rc2
[Sat Apr 19 17:57:25 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0
[Sat Apr 19 17:57:25 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0.1
[Sat Apr 19 17:57:26 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0.2
[Sat Apr 19 17:57:26 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0.3
[Sat Apr 19 17:57:26 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.0.4
[Sat Apr 19 17:57:27 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.1-rc1
[Sat Apr 19 17:57:27 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.1
[Sat Apr 19 17:57:27 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/phpMyAdmin-2.8.2
[Sat Apr 19 17:57:28 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/admin
[Sat Apr 19 17:57:28 2008] [error] [client xxx.xxx.xxx.xxx] File does not exist: /usr/local/sa24/public_html/admin

Dieses fiese Ding sucht gezielt nach üblichen phpMyAdmin Installationen. Andere suchen nach PHPKit, PHPBB usw... Jede auswertbare Information ist den Angreifern recht.

Da hilft nur:
  • anfällige Software vom Server werfen
  • Usernamen und Passwörter bei geschützten Zugängen klug wählen
  • regelmäßige Sichereitsupdates
  • Aufmerksam die Fachpresse verfolgen


Suchmaschinen glücklich machen


Rufe deine Website mit einem Textbrowser auf. Z.B. lynx ist so einer. Im Prinzip sieht eine Suchmaschine deine Seite so, wie du sie in lynx siehst. Wenn du mit lynx nicht über deine gesammte Seite navigieren kannst, werden auch wohl die SUMAs nicht mit deiner Seite klar kommen.

Förderlich


Hier mal ein paar Regeln um das Ranking positiv zu beeinflussen.
  • erstelle eine robots.txt
  • erstelle eine Sitemap
  • sorge für valides HTML
  • verwende echte Überschriften h1-h6
  • sorge dafür, dass andere Websites auf deine Seite verweisen
  • Meta Keywords sollten auch im Text erscheinen
  • verwende echte Links <a href="blabla">
  • verwende aussagekräftige URLs http://example.com/backwaren/zwiebelkuchen
  • verwende kurze URLs, bis zu 255 Zeichen
  • Verwende bei Images immer die alt="bli" und title="blub" Attribute
  • lagere CSS in eine extra Datei aus
Die Reihenfolge dieser Tipps ist willkürlich gewählt. Jede SUMA reagiert anders.


Hemmnisse

  • per JavaScript generierte Inhalte, z.B. Ajax
  • Verweise per onclick="tuwas();"
  • Doppelter/Mehrfacher Inhalt hinter verschiedenen URLs
  • Grafische Menues
  • nichts sagende URLs http://example.com/4/5/2/0
  • ungültiges HTML
  • endlose Weiterleitungs Kaskaden
  • überflüssige Meta Keywords
  • Navigationen und Inhalte in Flash

Suchmaschinen freundliche Links


Im Gegensatz zu dem lauten Getöse aus der Gerüchteküche ist es den SUMAs relativ wurscht wie die gefundenen Links aussehen. Beachte dabei allerdings die obrigen Regeln.
Code:
http://example.com/backwaren/zwiebelkuchen
http://example.com/backwaren/zwiebelkuchen.html
http://example.com/backwaren/zwiebelkuchen.php
http://example.com/index.php/backwaren/zwiebelkuchen
http://example.com/index.php?cat=backwaren&page=zwiebelkuchen

Allen diesen Links folgen die Suchmaschinen freudig erregt. Angehangene GET Parameter stellen kein Problem dar.


Sessions


Jetzt wird es problematisch. Da SUMAs im allgemeinen keine Cookies akzeptieren hängt PHP bei eingeschaltetem session.use_trans_sid die SID automatisch an alle relativen URLs. Bei jedem Suchlauf bekommt die SUMA eine andere SID. Sie findet also mehrfach identische Inhalte unter wechselnden URLs. Schlecht! Sehr schlecht!
Auch tun sich Sicherheitslücken in dem Zusammenhang auf. Beschrieben in Session Sicherheit.
Die PHP Sessionverwaltung setzt beim session_start() einige Header welche Einfluß auf das Cache Verhalten von Poxies und Browser nehmen sollen. Es ist davon auszugehen, dass Suchmaschinen auch diese Header auswerten und die Seiten als vergänglich bzw. als schon abgelaufen einstufen. Diese Seiten werden im Ranking sinken.
Es ist also keine schlechte Idee:
  • session.use_trans_sid abzuschalten
  • Die Sessionheader etwas zahmer einzustellen
  • Gäste, also auch SUMAS, grundsätzlich ohne Session IDs surfen zu lassen



Auch gute Suchmaschinen können böses tun


Wieso ist meine DB oder Verzeichnis plötzlich leer?


Folgendes Scenario:
Wir entwickeln gerade eine Website mit Datenbankanbindung. Der Einfachheit zur liebe machen wir uns ein paar Links um Datensätze anzulegen und zu löschen.
Wieder erwarten trampelt Googel(oder irgendeine andere SUMA) über die Seite. Was Passiert? Richtig, sie folgt allen gefundenen Links. Auch unseren Löschlinks. Ruckzuck ist die DB leer
Abhilfe:
Lösch und sonstige wichtige Aktionen nur über Formulare und per Login+Session gesichert erledigen.

Hohe Serverlast


Suchmaschinen sind in der Lage tausende von Requests (mehr oder weniger) gleichzeitig abzusetzen. Yahoo sein Slurp ist z.B. so ein freundlicher Kamerad. Das kann den Server heftig in die Knie zwingen. Zum Glück gibt es robots.txt Parameter mit dem man ihn überreden kann etwas zärtlicher vorzugehen.
Noch schlimmer:
Auch können, frei nach Murphy, alle SUMAs dieser Welt gleichzeitig deine Seite inspizieren.



Links


Google fängt an zu spammen: http://googlewebmastercentral-de.blo...ormularen.html
robots.txt
USER_AGENTS
Google Webmaster Info
Yahoo Webmaster Info
External Link Hommingberger Gepardenforelle
Session Sicherheit


Mitwirkende: combie, puritania
Erstellt von combie, 21.04.2008 am 14:51
Zuletzt bearbeitet von combie, 31.03.2013 am 13:21
0 Kommentare , 9297 Betrachtungen

Dieser Text steht unter der GNU-Lizenz für freie Dokumentation


 

Lesezeichen

Stichworte
google, session, suchmaschine, suma, yahoo

Artikel-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu
Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Suchmaschinen Robert17 PHP 1 08.05.2007 17:08
Suchmaschinen und PHP-Parameter gingerswelt PHP 3 25.01.2006 17:46
Suchmaschinen Skript elta PHP 3 25.11.2005 15:06
metaangaben für suchmaschinen thedeath HTML 2 13.10.2004 12:28
Suchmaschinen und Parameterübergabe semmel PHP 5 13.01.2003 23:04


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:08 Uhr.


Powered by vBulletin® Version 3.8.8 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Powered by NuWiki v1.3 RC1 Copyright ©2006-2007, NuHit, LLC