Wygląda na to, że moja witryna została przejęta… ale tylko wtedy, gdy została odwiedzona z innej witryny… jak?

16

Moja witryna to altoonadesign.com, jeśli wpiszesz ją bezpośrednio w przeglądarce, przeniesie Cię ona na właściwą stronę. Jeśli jednak poszukasz „altoona design” i klikniesz link do mojej witryny, nastąpi przekierowanie do złośliwej witryny.

Próbowałem tego w Google na Chrome i Bing na IE. na różnych komputerach zawsze z tymi samymi wynikami. wpisanie adresu URL prowadzi bezpośrednio do mojej prawdziwej witryny, kliknięcie linku w wynikach wyszukiwania przekierowuje do złośliwej witryny.

Nie jestem pewien, jak to się dzieje, jak to cofnąć lub jak temu zapobiec w przyszłości?

aktualizacja

kliknięcie linku z tego miejsca prowadzi również do złośliwej strony, więc wydaje się, że kliknięcie linku jest tym, co robi, ale wpisanie go bezpośrednio nie przekierowuje cię ... jak to jest?

JD Isaacks
źródło

Odpowiedzi:

13

Podczas przeglądania źródła strony na dole znajduje się kod, który nie wygląda tak, jakbyś tam umieścił:

<div style='position:absolute;left:-2125px;width:1024px'><a href='http://www.asrtu.org/trust_crcks/passware-myob-key-crack.html'>Passware MYOB Key crack</a></div><div style='position:absolute;left:-2125px;width:1024px'><a href='http://www.asrtu.org/trust_crcks/newstarsoccer-crack.html'>NewStarSoccer crack</a></div><div style='position:absolute;left:-2125px;width:1024px'><a href='http://www.asrtu.org/trust_crcks/pcsentinels-busted-crack.html'>PCSentinels Busted crack</a></div><div style='position:absolute;left:-2125px;width:1024px'><a href='http://www.asrtu.org/trust_crcks/3dmark2001-crack.html'>3DMark2001 crack</a></div><div style='position:absolute;left:-2125px;width:1024px'><a href='http://www.asrtu.org/trust_crcks/acdsee50powerpack-crack.html'>ACDSee50PowerPack crack</a></div><div style='position:absolute;left:-2125px;width:1024px'><a href='http://keygen-0day.ws/database/My%20TypeArtist%201.000B/'>My TypeArtist 1.000B</a></div></body> 
<!-- InstanceEnd --></html> 
<script>check_content()</script>check_content()</script>

Podczas korzystania ze skrzypka i uzyskiwania dostępu do Twojej witryny przez Google widzę, że trafia ona do Twojej domeny 1., a następnie zostaje przekierowana przed załadowaniem całej strony.

Sprawdź kod php, prawdopodobnie umieścił kod przekierowujący na twojej stronie.

Ed B.
źródło
20

Właściwie nie podążyłem za twoim linkiem (bez chęci spełnienia luki zero-day), ale to, co często zdarza się po zhakowaniu serwera, polega na tym, że kod jest umieszczany w dowolnych plikach PHP w celu sprawdzenia nagłówka strony odsyłającej i przekierowania, jeśli wizyta pochodzi z wyszukiwarki lub jeśli nie pochodzi z bieżącej witryny.

Odbywa się to w celu uniemożliwienia właścicielowi strony uświadomienia sobie, że hack jest na miejscu, ponieważ prawdopodobnie zazwyczaj odwiedzasz stronę bezpośrednio, zamiast znajdować ją za pośrednictwem wyszukiwarki.

Andrew Aylett
źródło
4
+1 za wyjaśnienie „dlaczego”. Całkiem sprytny.
BalusC
Dziękuję, mogę polecić, jak to wyśledzić i naprawić. powinienem zacząć przeglądać wszystkie pliki w mojej witrynie? Dzięki!
JD Isaacks
Jeśli masz ostatnią kopię zapasową (lub kontrolę źródła), użyj jej :). W przeciwnym razie zacznij przeglądać ostatnio zmodyfikowane pliki, pliki zmodyfikowane przez użytkownika serwera WWW lub pliki zawierające „referrer”. Możliwe, że kod będzie co najmniej lekko zaciemniony, więc wyszukiwanie może nie działać. Następnie poszukaj punktu wejścia - nie chcesz pozostawiać go otwartego :). Zakładam, że używasz PHP i najprawdopodobniej niezaznaczone dołączenie.
Andrew Aylett,
4

Przede wszystkim jest to pytanie programistyczne , absolutnie nie mam pojęcia, co to robi na Serverfault.

W twojej aplikacji php jest luka w zabezpieczeniach i musisz ją znaleźć i załatać. Najpierw jednak pójdę i upewnię się, że wszystkie twoje biblioteki PHP są aktualne. Luka w phpmailer lub smarty może pozwolić hakerowi włamać się do Twojej witryny.

Następnie przeskanowałbym twoją stronę za pomocą czegoś takiego jak Acunetix ($) lub NTOSpider ($$$). Dobrą alternatywą dla open source są wapiti i w3af . Te skanery mogą wykrywać podatności, takie jak niewłaściwe użycie, eval()które może prowadzić do tego rodzaju ataku.

Następnie powinieneś zablokować php używając phpsecinfo , upewnij się display_errors=off. Jeśli masz zaplecze MySQL, upewnij się, że zostało wyłączone file_priv(uprawnienia do plików) dla konta MySQL używanego przez PHP.

Oto kilka dobrych zasobów do pisania bezpiecznego kodu PHP:

http://phpsec.org/library/

http://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project

Unikaj także FTP, takich jak plaga, ponieważ rozprzestrzenia się teraz wiele robaków, wykrywając lokalną maszynę w poszukiwaniu logowań FTP, a następnie infekując witrynę. Upewnij się także, czy na wszystkich komputerach z dostępem do serwera działa program antywirusowy, nawet jeśli jest to darmowy program, taki jak AVG.

Wieża
źródło
Rook, Początkowa wada jest prawie na pewno problemem programistycznym. Ale jeśli serwer został skonfigurowany, a zabezpieczenia zostały odpowiednio wzmocnione, wada oprogramowania mogłaby nie zostać wykorzystana. Jestem również ciekawy, jak możesz być w 100% pewien, że wada tkwi w oprogramowaniu, które opracował, a nie w jakiejś konfiguracji systemu operacyjnego lub jakimś innym narzędziu. Jeśli kopie zapasowe działają poprawnie, wówczas „naprawienie” problemu można łatwo osiągnąć przez szybkie przywracanie.
Zoredache,
@Zoredache masz prawo, że problemem może być problem z konfiguracją lub usterka w innej usłudze. Jednak wiele exploitów działa niezależnie od konfiguracji lub ustawień bezpieczeństwa, takich jak wstrzykiwanie SQL. Nawet w przypadku AppArmor i SELinux system można nadal łatwo wykorzystać.
Rook