Włamania na stronę www.

0

Witam!

Mamy od kilku dni problem, z włamaniami na naszą stronę, już dwa razy nasza strona główna została zastąpiona inną i utraciliśmy kilka cennych plików.

Nie wiemy jak sobie z tym poradzić, nowa strona główna jest na razie w trakcie pracy, i nie jest udostępniona więc, dziury w skrypcie nie są możliwe, ponieważ jest tylko baner, menu i informacja, że strona jest w budowie i zapraszamy na nasze forum. Forum oparte na skrypcie phpbb3 z najnowszym update. Jakimś cudem znajdowały się dziwne pliki *.php na naszym ftp nie wiadomo skąd i jak, mimo że zostawały usuwane pojawiały się znowu.

Zrozumiałbym jeśli szkodzilibyśmy komuś, ale robimy coś dla ludzi, co jest naszą pasją, wszystko pokrywamy z własnych kosztów i nic nie zarabiamy, a przez tych pseudo hackerów odechciewa nam się już wszystkiego... Zrobimy jedno, to zostaje część plików usunięta i znowu zabawa... hasła zostawały zmieniane, na ciągi nawet 20 znakowe w tym znaki specjalne, cyfry, litery...
Nasza hostownia unixstorm, w żaden sposób nie chce pomóc i zakrywają się tylko tekstem "Na nasze serwery nikt się nie włamał, problem leży po waszej stronie, najprawdopodobniej zostały podane komuś hasła, lub dziury w skryptach". Hasła nikomu nie były podawane, nasze komputery wolne od złośliwych i szpiegowskich oprogramowań. A co do skryptu, setki tysięcy ludzi używa phpbb3 i wieści na pewno szybko by się rozniesły o dziurach i zostały naprawione przy aktualizacjach....

0

@rozpaczony_czlowiek:
Napisaliście samodzielnie jakikolwiek kod PHP? Modyfikowaliście HTML? Co czasem widać w kodzie, to sam byś się zdziwił. Hasła w komentarzach HTML-owych, czy w publicznie dostępnych (ukrytych jedynie w robots.txt... albo i nie) plikach txt. W PHP nie tyle dziury, co wręcz ziejące JAPY. Tutaj na forum widać je całkiem często, gdy ktoś wkleja swój kod i prosi o pomoc przy czymś. Słynne include $_GET['module'], czy coś takiego.

Ile osób na dostęp do haseł? Próbowaliście je zmienić (wywalając dodatkowe skrypty)? Skanowaliście swoje komputery silnymi antywirusami, aby znaleźć jakieś złośliwe oprogramowanie? Czasem ludzie mówią, że ich system jest na pewno bezpieczny, a siedzą na Win XP bez Service Packów i bez oprogramowania antywirusowego.

Włamania zawsze możecie zgłosić na policję. Naprawdę polecam ten sposób. Jeśli Was to nie bawi, to nawet jakbyście mieli luki w zabezpieczeniach -- nikt nie może się do Was włamywać i Wam śmiecić (gdy jakiś z Waszych niby-poufnych plików jest publicznie dostępny, to może go oglądać, ale gdy musi aktywnie szukać luk, to już co innego). Crackerzy, szczególnie script-kiddies, ale nie tylko, rzadko mają tak naprawdę jaja gdy nagle się okazuje, że real life istnieje i puka do ich drzwi przy pomocy smutnych funkcjonariuszy policji. A czasem udaje się sprawę z włamaniem doprowadzić do końca, szczególnie gdy straty mają większą wartość. Co innego, gdyby ktoś Wam zostawił w jakimś katalogu "karteczkę" w pliku tekstowym "Poprawcie zabezpieczenia, bo wlazłem tu bez żadnych problemów!", a co innego gdy ktoś złośliwie gnoi.

0

Mógłbyś mi bardziej przybliżyć to "słynne include" ? Muszę przepatrzeć, wszystko. Skrypty owszem modyfikuję, ale One działają tlyko offline w moim Krasnalu, a to co jest na ftp jest wszystko standard+wgrane 2mody do phpbb3, pobrane z oficjalnych źródeł. Komputer mój jest czysty bo jakiś tydzień temu robiłem format, a strony jakie odwiedzam to tylko suport phpbb3, 4p, onet, gmail, strona tutoriali flasha i ps'a. Na nic innego nigdy nie wchodzę, bo nie mam po co. Antywirus to kaspersky. Hasła tylko dwie osoby znają.

Jeśli problemy nadal będą się powtarzać to chyba tylko policja zostanie...

Ja biorę się za przegląd plików

0

na ftp znalazłem kilka plików z tymi samymi kodami c100.php, c99.php itd..

kod to :

<?php
tu był dłuuuuugi kod, usunięty na prośbę autora
0

Z tym include to chodzi o dość częsty we wklejanych tu na forum skryptach brak unieszkodliwiania danych wejściowych. Dotyczy to nie tylko include, ale jeden z użytkowników forum (niestety nie pamiętam który, a teraz nie mogę go znaleźć) ma coś takiego w podpisie:

// !!! NEGATYWNY PRZYKŁAD !!!
include $_GET['module'];

Problemem nie jest tu korzystanie z include w ogóle, czy też z parametrów przesyłanych GET-em. Chodzi o brak jakiejkolwiek walidacji danych wejściowych. Ktoś może przecież wpisać w przeglądarkę:

adres.twojej.strony.pl/index.php?module=plik_ktory_chciales_ukryc.config

Napisane tak na pałę include zainkluduje każdy skrypt, o który się go poprosi. Zastosowanie $_POST zamiast $_GET nie jest tu żadnym rozwiązaniem, bo żądania POST można wysyłać bardzo łatwo (tyle że nie z pasku adresu przeglądarki). Przed inkludowaniem trzeba zrobić walidację parametru module: najlepiej za pomocą białej listy dostępnych publicznie modułów. Jeśli wartość parametru znajduje się na tej liście, to inkludujemy. Jeśli nie, to wywalamy błąd.

Podobnie ludzie potrafią robić takie cuda jak:

$query = 'SELECT * FROM klienci WHERE id_klienta = ' . $_GET['id_klienta'] . ' ORDER BY ...';

// ... $uzyj query jako zapytania do bazy danych

I teraz ktoś może tak spreparować żądanie GET (podobnie mógłby zrobić z POST), by... usunąć wszystkie dane z Twojej bazy. Bo nie sprawdzasz, czy w id_klienta jest rzeczywiście id (liczba), czy też kawałek złośliwego kodu, który kończy zapytanie SELECT i robi dalej DELETE FROM. To się z kolei nazywa atak SQL Injection, pogooglaj sobie o tym jeśli jeszcze tego nie znasz. Mam nadzieję, że znałeś, bo to bardzo popularny problem, ale z drugiej strony nie raz widziałem tu skrypty, które są na niego w oczywisty sposób narażone.

EDIT: Teraz widzę, że wkleiłeś jakiś MEGA kod :). Obawiam się jednak, że to za duży fragment jak na kod tego forum. Już nie chodzi o to, że wklejanie takiej krowy jest po prostu... złe i zabiło przynajmniej 5 małych, słodkich kociaków, ale wygląda na to, że trafiłeś na limit długości posta na forum i część została ucięta.

Nie wiem, czy ktokolwiek tutaj będzie się chciał przez to przebijać ("trochę" tego sporo), ale jak gdzieś to wstawiasz, to wstaw np. na codepad.org. Zaznacz po lewej PHP, a na dole załącz checkbox przy Private i wyłącz przy Run code. Potem dostaniesz link do tego kodu i możesz wstawić go tutaj (nie wiem, czy codepad pozwala na wklejanie takich wielgaśnych fragmentów, w razie czego są inne serwisy do tego).

0

Używasz Total Commandera i masz w nim zapisane hasło? Są takie ładne zabawki co się wrzucają na serwer korzystając z wykradzionych haseł z programów FTP.

Ten długaśny kod powyżej to jakiś backdoor, kiedyś taki się znalazł i na moim serwerze: pojawił się w katalogu do którego dowolny użytkownik miał prawo wrzucać pliki (chmod na 777), nie pamiętam skąd była dziura, ale się znalazł. Popatrzcie czy jakiś nadmiarowych katalogów do których można coś uploadować nie ma.

edit: popatrz w logach serwera (o ile masz do nich dostęp) kto próbował się i z jakiego adresu IP do owych skryptów odwoływać.

0

Dziękuję Ci za pomoc, wrzucę to tam i prosiłbym Cię abyś zgłosił ten post jeśli możesz lub ktoś inny. Prawdopodobnie już znamy potencjalnego sprawcę.

Niestety zazdrość niektórych ludzi jest zbyt duża aby pogodzić się z niektórymi sprawami.

Zabieram się za lekturę.

0

Inna opcja - ktoś mógł się wbić na serwer używając innej domeny i latając po SSH ma dostęp do wszystkich stron danego usługodawcy. Radziecka nauka zna takie przypadki

0

Sprawa wyjaśniona, kod który podałem tak jak powiedział Ktos to był backdoor, cała aplikacja, bo wrzuciłem ją na ftp i odpaliłem, miał wszystkie możliwości. Znał czyjeś hasło z 4 administratorów do zarządzania amxbans i zamiast demka wrzucił ten plik, wpisał ścieżkę do miejsca tego pliku i miał pełen dostęp. Dobrze, że kod został całkowicie usunięty po w niepowołanych rękach mógłby wyrządzać kolejne szkody. Chciał się pozabezpieczać i pod różnymi nazwami powrzucał go do różnych folderów w phpbb3. Wszystko zostało na szczęście usunięte, dostępy do wrzucania demek zostały ograniczone i trzeba zrobić filtr dla pewnych rozszerzeń. Z logów udało nam się wyciągnąć IP delikwenta i wyszło, że jest z Białorusi pewno łączył się przez jakieś proxy. Sądzimy, że opanowaliśmy sytuację i nie zgłaszamy na policję, jednak jeśli jeszcze raz nastąpi włamanie od razu i bez zastanowienia się dzwonimy na policję.

Dziękuję wszystkim za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1