mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 19:18 Benutzername: Passwort: Auto-Login

Thema: Webseite gehackt, brauche Hilfe! vom 11.09.2011


Neues Thema eröffnen   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. MGi Foren-Übersicht -> Web-Hosting und Internetzugang -> Webseite gehackt, brauche Hilfe!
Seite: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11  Weiter
Autor Nachricht
hannahc
Threadersteller

Dabei seit: 20.02.2011
Ort: Würzburg
Alter: 47
Geschlecht: Weiblich
Verfasst So 11.09.2011 00:03
Titel

Webseite gehackt, brauche Hilfe!

Antworten mit Zitat Zum Seitenanfang

Hallo liebe Leute,

bin gerade darauf hingewiesen worden, daß sich im Quellcode meiner Webseite jede Menge Datenmüll befindet.

Habe mir das dann angeschaut, und gesehen, daß das nicht von mir ist, sieht also wohl so aus, als hätte jemand die Seite gehackt.

Ich wollte jetzt gerne wissen, welche Arten des Webseiten-Hackings gibt es? Was ich schon kenne ist, daß man halt den FTP-Zugang zur Domain hackt.

Aber gibt´s da noch andere Möglichkeiten?

Und mal angenommen, jemand hat tatsächlich den FTP-Zugang gehackt, und darüber dann die Seite verändert, wie kann ich das in Zukunft verhindern? Versuchen, einen SFTP-ZUgang vom Provider zu bekommen (bin mir aber nicht sicher, ob die das machen)?
  View user's profile Private Nachricht senden
Mac

Dabei seit: 26.08.2005
Ort: Köln
Alter: 62
Geschlecht: Männlich
Verfasst So 11.09.2011 07:08
Titel

Antworten mit Zitat Zum Seitenanfang

dass jemand den FTP-Zugang entert, ist wohl eher die Ausnahme, es sei den dein Passwort heißt Passwort....

Eher wohl über schlechte PHP-Skripte und Code-Injection.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
aUDIOfREAK

Dabei seit: 04.04.2002
Ort: Ansbach
Alter: 44
Geschlecht: Männlich
Verfasst So 11.09.2011 08:14
Titel

Antworten mit Zitat Zum Seitenanfang

mit was ist deine webseite denn umgesetzt? einem open source cms? eigenen php-scripten gepaart mit mysql? gibt es im backend irgendwelche wysiwyg-editoren? Glaskugel
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
hannahc
Threadersteller

Dabei seit: 20.02.2011
Ort: Würzburg
Alter: 47
Geschlecht: Weiblich
Verfasst Mo 12.09.2011 03:04
Titel

Antworten mit Zitat Zum Seitenanfang

Hi,

meine Webseite ist ein bißchen PHP und ansonsten pures old school HTML und CSS (kein CSS3 oder sowas, nur HTML-Elemente, die abwärtskompatibel von allen Browsern erkannt werden), und ein bißchen Javascript (das dient aber auch nur dazu, um irgendwelche CSS-Eigenschaften von Elementen zu verändern z.B. visible/hidden usw.).

Alles handprogrammiert mit PSPad, keine wysiwyg-Editoren.

Der PHP-Teil der Webseite dient vor allem am Anfang als Browserweiche, also von daher kann man nicht wirklich von einer PHP-Webseite sprechen (Ausnahme: Das Kontaktformular wird komplett durch PHP generiert, siehe Code unten).

Was die Code-Injection betrifft, das wäre allenfalls über das Kontaktformular möglich, das Formular arbeitet mit POST und ruft zur Zeichenumwandlung und zum Schicken der Email ein Stück PHP-Code auf (der Code ist mit auf der Webseite eingebettet).

Ich kann ihn ja mal kurz posten (wie gesagt, um das Thema Sicherheit habe ich mir bisher noch nicht so viele Gedanken gemacht, vielleicht ist dieses PHP-Skript ja echt "schlecht"):


Zur kurzen Erläuterung: Die Variable $meldung, die gleich zu Anfang mit ellenlangem HTML-Text auftaucht, wird per <?php print $meldung; ?> in ein div in der Webseite eingebunden, und generiert damit das Kontaktformular.

Im weiteren Verlauf ändert sich diese Variable noch, je nach Situation, nachdem der Anwender den Senden-Button gedrückt hat (z.B. Fehlermeldung plus rotmarkierte Felder im Kontaktformular, wenn keine Emailadresse angegeben wurde, oder ähnliches, bzw. wenn alles paßt und auch die Mail erfolgreich verschickt werden konnte, enthält $meldung einfach nur den HTML-Code für den Hinweis "Herzlichen Dank für Ihre Nachricht...usw".

dazwischen gibt es noch zwei While-Schleifen, die einfach prüfen, ob die Telefonnummer (falls der Anwender eine angegeben hat) einigermaßen Sinn macht.


Code:

$email="";
$telefon="";
$abs1="";
$abs2="";
$meldung='<p style="">Hannah mustermann<br>
Musterweg 7<br>
97950 Musterdorf</p>
<br>
<b>Telefon: 09000000</b><br>
<b>Fax: 09000000000</b>
<p>Ich bin telefonisch f&uuml;r Sie erreichbar MO-DI, DO-FR von 11.00 Uhr bis 20.00 Uhr und SO von 12.30 Uhr
bis 14.30 Uhr.<br><br>
Au&szlig;erhalb dieser Zeiten k&ouml;nnen Sie auch gerne versuchen anzurufen, da allerdings keine Garantie, da&szlig; Sie mich erreichen (aber nat&uuml;rlich rufe ich Sie baldm&ouml;glichst zur&uuml;ck).</p>
<p>Das B&uuml;ro ist besetzt MO-DI und  DO-FR von 16.00 Uhr bis 19.00 Uhr.</p>
<br>
<br>
<p><b>Oder schreiben Sie mir einfach eine Mail:</b></p>';
$kontakt_form='<form action="index.php?remindon='. $remindon .'" method="post" style="border-style:none">
<table style="text-align:left; margin-top:0px; position:relative; top:0px; border-style:none" cellspacing="10">
<tr>
<td>
Ihre Email-Adresse, oder Telefonnummer (oder beides, dann bitte mit Komma getrennt):<br>
<input style="border-style:inset; background-color:red; border-color:#EEEEEE; border-width:2px;
background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif" type="text"
name="absender" size="50">
</td>
</tr>
<tr>
<td>
Betreff:<br>
<input style="border-style:inset; border-color:#EEEEEE; border-width:2px; background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif"
type="text" name="betreff" size="50">
</td>
</tr>
<tr>
<td>
Ihre Nachricht:<br>
<textarea style="width:100%; border-style:inset; border-color:#EEEEEE; border-width:2px; background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif"
name="nachricht" cols="60" rows="10"></textarea>
</td>
</tr>
<tr>
<td style="text-align:center">
<input type="submit" value="Senden" name="senden" class="button">
</td>
</tr>
</table>
</form>
<br>
<br>
<br>
<br>
<div style="white-space:nowrap">
<a style="color:#DC4FEF" target="_blank"
href="http://maps.google.de/maps?f=d&source=s_d&saddr=&daddr=Lindenstra%C3%9Fe,+Gerchsheim,+Gro%C3%9Frinderfeld&geocode=Fbd09gId60iVACmrDIGaP5miRzGNW-JxQdf8FA&hl=de&mra=ls&sll=49.750215,9.861995&sspn=0.125555,0.209084&ie=UTF8&ll=49.697838,9.821777&spn=0.251381,0.418167&z=11"><b>Hier gehts zur Google Maps Anfahrtsbeschreibung</b></a>
<img style="position:relative; top:36px; left:5px" src="./graphics/compass4.jpg" alt="Kompass">
</div>
<p style="position:relative; top:0px; color:#DC4FEF; font-size:9.5pt">(Bitte die bereits eingetragene Zieladresse "Lindenstra&szlig;e"<br>
so lassen, da der "Musterweg" in den meisten<br>
Kartenverzeichnissen noch nicht bekannt ist).</p>
';
$antwort='<h2>Ich werde mich sobald wie m&ouml;glich mit Ihnen in Verbindung setzen</h2>';
$button="Senden";
$post_absender=$_POST['absender'];
$post_betreff=$_POST['betreff'];
$post_nachricht=$_POST['nachricht'];
$post_ohne_absender=$_POST['ohne_absender'];
$richtig=array("§","ß","ü","ä","ö","Ä","Ü","Ö","@","°","€","´");
$falsch=array("§","ß","ü","ä","ö","Ä","Ü","Ö","@","°","€","´");
$abs1=trim(substr($_POST['absender'],0, strpos($_POST['absender'],",")));
$abs2=trim(substr($_POST['absender'],strpos($_POST['absender'],",")+1));
$senden=isset($_POST['senden']);
$zurueck_kont=isset($_POST['zurueck_kont']);
$abbrechen=$_POST['abbrechen'];
if ($post_nachricht!="" || $post_absender!="" || $post_betreff!="" || $senden==true || $zurueck_kont==true){
$kontakt_displ='*.leist, *.preise, *.biologisches, *.referenzen, *.aktuelles, *.kudos, *.it, *.firma, *.info {display:none}';
$kontakt_displ1='Zeige_kontakt(); Klick_kontakt();';
unset($_POST['zurueck_kont']);}
$hidden_ohne_absender='';
if($post_nachricht!="" && $abbrechen==false){
$message=str_replace($falsch,$richtig,$_POST['nachricht']);
$betreff=str_replace($falsch,$richtig,$_POST['betreff']);     
  if ($abs1=="")               
  $abs1=$post_absender;     
    if ($abs1=="" && $abs2=="" && $post_ohne_absender==""){
    $hidden_ohne_absender='<input type="hidden" value="1" name="ohne_absender">';
    $meldung='<div style="border-style:solid; border-width:5px; border-color:red; font-weight:normal; color:black;
    padding-left:10px; padding-right:10px">
    <p>Sie haben keine Kontaktdaten f&uuml;r Ihre Mail angegeben!</p>
    <p>Wenn das so ok ist, und Sie keine Antwort m&ouml;chten, dr&uuml;cken Sie bitte nochmal den "Senden"-Knopf</p>
    <p>Oder geben Sie jetzt noch Ihre Kontaktdaten im Emailadresse-Feld ein.</p>
    </div>';
    }     
    else if ($abs1!="" && $abs2!=""){
    if (strpos($abs1,"@")> 0)
    $email=$abs1;
      else{
        $i=0;
        $j=0;
        while ($i<strlen($abs1)){
          if (
          strpos(substr($abs1,$i,1),"0")>0||
          strpos(substr($abs1,$i,1),"1")>0||
          strpos(substr($abs1,$i,1),"2")>0||
          strpos(substr($abs1,$i,1),"3")>0||
          strpos(substr($abs1,$i,1),"4")>0||
          strpos(substr($abs1,$i,1),"5")>0||
          strpos(substr($abs1,$i,1),"6")>0||
          strpos(substr($abs1,$i,1),"7")>0||
          strpos(substr($abs1,$i,1),"8")>0||
          strpos(substr($abs1,$i,1),"9")>0)
            $j=$j+1;
        $i=$i+1;}
    if (j>5)
      $telefon=$abs1;}
    if (abs2!=""){
      if (strpos($abs2,"@")> 0)
        $email=$abs2;
      else{
      $i=0;
      $j=0;
      while ($i<strlen($abs2)){
        if(strpos(substr($abs2,$i,1),"0")===0||
          strpos(substr($abs2,$i,1),"1")===0||
          strpos(substr($abs2,$i,1),"2")===0||
          strpos(substr($abs2,$i,1),"3")===0||
          strpos(substr($abs2,$i,1),"4")===0||
          strpos(substr($abs2,$i,1),"5")===0||
          strpos(substr($abs2,$i,1),"6")===0||
          strpos(substr($abs2,$i,1),"7")===0||
          strpos(substr($abs2,$i,1),"8")===0||
          strpos(substr($abs2,$i,1),"9")===0)
            $j=$j+1;
      $i=$i+1;}
    if ($j>5){
      $telefon=$abs2;
      }}}
    if ($email=="" && $telefon==""){
      $button="Alles korrigiert. Nochmal senden!";
      $meldung='<div style="border-style:solid; border-width:5px; border-color:red; padding-left:10px; padding-right:10px">
      <p>Leider konnte ich weder eine Emailadresse, noch eine Telefonnummer genau bestimmen.</p>
      <p>Bitte pr&uuml;fen Sie, ob Sie bei der Emailadresse das "@" auch nicht vergessen haben.</p>
      <p>Wenn Sie eine Telefonnummer angegeben haben, pr&uuml;fen Sie, ob diese vollst&auml;ndig ist (haben Sie vielleicht Zahlen vergessen?).</p>
      </div>';}
    }
$kontakt_form='<form action="index.php?remindon='. $remindon .'" method="post">
<table style="text-align:left; margin-top:30px" cellspacing="10">
<tr>
<td>
Ihre Email-Adresse, oder Telefonnummer (oder beides, dann bitte mit Komma getrennt):<br>
<input style="border-style:inset; border-color:#EEEEEE; border-width:2px;
background-color:#FFAAAA; font-family:arial,liberation sans,sans-serif" type="text"
name="absender" size="50" value="'. $post_absender. '">'
.$hidden_ohne_absender.
'</td>
</tr>
<tr>
<td>
Betreff:<br>
<input style="border-style:inset; border-color:#EEEEEE; border-width:2px; background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif"
type="text" name="betreff" size="50" value="' . $post_betreff. '">
</td>
</tr>
<tr>
<td>
Ihre Nachricht:<br>
<textarea style="width:100%; border-style:inset; border-color:#EEEEEE; border-width:2px; background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif"
name="nachricht" cols="60" rows="10">' . $post_nachricht . '</textarea>
</td>
</tr>
<tr>
<td style="text-align:center">
<input type="submit" value="'.$button.'"" name="senden" class="button">
<input type="submit" name="abbrechen" value="Abbrechen">
</td>
</tr>
</table>
</form>';
if ($abs1=="" && $abs2=="" && $post_ohne_absender==1){
if (mail ("cczerny@gmx.de",$betreff,"Von: ohne Absender\r\n".$message)){
$meldung='<div style="border-style:dotted; border-color:green; text-align:center; padding-left:10px; padding-right:10px">
<h2>Herzlichen Dank f&uuml;r Ihre Nachricht!</h2></div>
<img src="./graphics/brief2.gif" alt="animation" style="position:absolute; top:0px; z-index:5">';
unset($_POST);
$kontakt_form='<br>
<form action="index.php?remindon='. $remindon .'" method="post" style="text-align:center">
<input style="margin-top:100px" type="submit" name="zurueck_kont" value="Zur&uuml;ck zur Kontaktseite">
</form>';}
}
if ($email!="" || $telefon!=""){
if (mail ("cczerny@gmx.de",$betreff,'Von:'.$post_absender."\r\n".$message)){
$meldung='<div style="border-style:dotted; border-color:green; text-align:center; padding-left:10px; padding-right:10px">
<h2>Herzlichen Dank f&uuml;r Ihre Nachricht!</h2>'. $antwort.'</div>
<img src="./graphics/brief2.gif" alt="animation" style="position:absolute; top:0px; z-index:5">';
unset($_POST);
$kontakt_form='<br>
<form action="index.php?remindon='. $remindon .'" method="post" style="text-align:center">
<input style="margin-top:100px" type="submit" name="zurueck_kont" value="Zur&uuml;ck zur Kontaktseite">
</form>';}
}}
else if ($senden==true){
$meldung='<div style="border-style:solid; border-width:5px; border-color:yellow; padding-left:10px; padding-right:10px">
      <p>Lieber Besucher,</p>
      <p>Ein paar Worte als Nachricht sollten Sie schon noch schreiben, bevor Sie den "Senden"-Knopf dr&uuml;cken.&nbsp;:)</p>
      <p>Es macht ja keinen Sinn, eine leere Mail zu versenden.</p>
      </div>';
$kontakt_form='<form action="index.php?remindon='. $remindon .'" method="post" style="border-style:none">
<table style="text-align:left; margin-top:30px; position:relative; top:20px; border-style:none" cellspacing="10">
<tr>
<td>
Ihre Email-Adresse, oder Telefonnummer (oder beides, dann bitte mit Komma getrennt):<br>
<input style="border-style:inset; background-color:red; border-color:#EEEEEE; border-width:2px;
background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif" type="text"
name="absender" size="50" value="' . $_POST['absender']. '">
</td>
</tr>
<tr>
<td>
Betreff:<br>
<input style="border-style:inset; border-color:#EEEEEE; border-width:2px; background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif"
type="text" name="betreff" size="50" value="' . $_POST['betreff']. '">
</td>
</tr>
<tr>
<td>
Ihre Nachricht:<br>
<textarea style="width:100%; border-style:inset; border-color:#EEEEEE; border-width:2px; background-color:#EFEEEF; font-family:arial,liberation sans,sans-serif"
name="nachricht" cols="60" rows="10"></textarea>
</td>
</tr>
<tr>
<td style="text-align:center">
<input type="submit" value="Senden" name="senden" class="button">
<input type="submit" name="abbrechen" value="Abbrechen">
</td>
</tr>
</table>
<br>
</form>';
}
?>


Ach ja, es gibt auch keine Datenbank hinter der Webseite.

Schon jetzt danke Eure weitere Hilfe!!!
  View user's profile Private Nachricht senden
hannahc
Threadersteller

Dabei seit: 20.02.2011
Ort: Würzburg
Alter: 47
Geschlecht: Weiblich
Verfasst Mo 12.09.2011 04:35
Titel

Antworten mit Zitat Zum Seitenanfang

So, habe mich nochmal schlau gemacht.

Also für Javascript-Injectionen á la "</textarea><script type="text/javascript">alert('hallo');</script>, wenn man das eben z.B. ins Textarea des Kontaktformulars eingibt, ist der Code natürlich anfällig.

Dann müßte ich also alle POST-Sachen noch mit htmlspecialchars filtern.

Inwieweit man aber über Javascript-Injection HTML-Dateien für immer verändern kann, bzw. ob in dem obigen Code das Injizieren eines PHP-Codes möglich ist, der Dateien für immer verändert, soweit bin ich jetzt noch nicht gekommen.

Bin aber für jeden Tip dankbar, falls Ihr was seht!!
  View user's profile Private Nachricht senden
aUDIOfREAK

Dabei seit: 04.04.2002
Ort: Ansbach
Alter: 44
Geschlecht: Männlich
Verfasst Mo 12.09.2011 06:44
Titel

Antworten mit Zitat Zum Seitenanfang

ein freund von mir hat sich mal einen trojaner eigefangen, der ftp zugangsdaten mitloggt und weiterleitet. damit hatten fremde dann kompletten zugriff auf den server. ansonsten gibt es noch die moeglichkeit wenn auf dem server ein veraltetes betriebssystem dauf ist, das sicherheitsluecken aufweist. schon mal die logfiles vom server gecheckt. die betroffenen dateien sollten ja dann ein neueres datum tragen an dem sie veraendert wurden. und hier dann mal die logfiles pruefen, ob es da auffaelligkeiten gibt.

Zuletzt bearbeitet von aUDIOfREAK am Mo 12.09.2011 06:46, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Kipperlenny

Dabei seit: 20.05.2010
Ort: Preetz
Alter: 38
Geschlecht: Männlich
Verfasst Mo 12.09.2011 10:46
Titel

Antworten mit Zitat Zum Seitenanfang

JavaScript ist Client spezifisch - daher kann man damit auf dem Server keine Daten verändern.
Das PHP Skript kann man verbessern, ist aber nicht "böse" (nimm mal auf dem Beitrag trotzdem deine Mail Adresse raus).

Ich glaube also eher, dass du ein zu einfaches FTP Passwort hattest, deine FTP Daten mitgeloggt wurden oder jemand Shell Zugriff auf den Server hat.

Aber was für ein Interesse könnte man haben deine Seite zu hacken?! Gibt es dort wichtige Geldgeschäfte, private Daten oder Steuersünder CDs? Lächel

ps: Dateirechte checken!


Zuletzt bearbeitet von Kipperlenny am Mo 12.09.2011 10:47, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
aUDIOfREAK

Dabei seit: 04.04.2002
Ort: Ansbach
Alter: 44
Geschlecht: Männlich
Verfasst Mo 12.09.2011 10:48
Titel

Antworten mit Zitat Zum Seitenanfang

Kipperlenny hat geschrieben:
Aber was für ein Interesse könnte man haben deine Seite zu hacken?! Gibt es dort wichtige Geldgeschäfte, private Daten oder Steuersünder CDs? Lächel


ich glaub eher das da jemand irgendwelche malware oder schadcode in den quellcode der seiten eingefügt hat... sowas hatte ein kunde hier auch schon mal, der auf der kiste n altes oscommerce laufen hatte...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen ftp oder blog gehackt ?
brauche hilfe bei bilddatenaustausch per ftp
Brauche Infos zu KK-Antrag
brauche dsl binnen einer woche
Problem mit dem Internet. brauche hilfe.
Suche Webspace - brauche Empfehlung
Neues Thema eröffnen   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Seite: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11  Weiter
MGi Foren-Übersicht -> Web-Hosting und Internetzugang


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.