PDA

Zobacz pełną wersję : Informacje na tym serwisie o bezpieczeństwie - plik .htaccess



cliper
23-05-2013, 20:17
Witam.
Na w serwisie napisano atykuł o bezpieczeństwie:
http://wiki.joomla.pl/Bezpiecze%C5%84stwo_-_przyk%C5%82adowy_.htaccess
Został on napisany w 2009 roku - do Joomla!1.5 tak sądzę.

Czy wszystkie informacjie np. z tego artykułu i innych - odnośnie pliku .htaccess - działają również w Joomla!2.5?

Proszę bardzo o pomoc.

zwiastun
23-05-2013, 20:30
Napisano (przetłumaczono) ponad 50 opracowań. Są tam także informacje zdezaktualizowane, co jest zrozumiale - 4 lata to bardzo dużo.
Określenie "odnośnie pliku .htaccess" jest zbyt ogólne.

cliper
23-05-2013, 21:57
W tym linku co podałem czy dobre są dyrektywy do Joomla!2.5.11?

1)
# Włączenie mechanizmu przepisywania adresów
RewriteEngine On
Options +FollowSymLinks


2) Dział: Zmiana zasad w celu zablokowania niektórych typowych ataków

## Zablokuj wszystkie skrypty, które chcą zmienić wartość zmiennej mosConfig przez adres URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]

# Zablokuj wszystkie skrypty, które próbują przesłać w adresie URL dane w formacie base64
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]

# Zablokuj wszystkie skrypty zawierające znacznik ********** w adresie URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]

#Zablokuj wszystkie skrypty próbujące zmienić wartość zmiennej PHP GLOBALS przez adres URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]

# Zablokuj wszystkie skrypty próbujące zmienić wartość zmiennej _REQUEST przez adres URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

# Prześlij wszystkie zablokowane wywołania strony z informacją o błędzie 403 (odmowa dostępu)
RewriteRule ^(.*)$ index.php [F,L]


3) Jeśli ktoś by wiedział jak prawidłwo przetłumaczyć na polski. Jeśli są dobre dla wersji 2.5.
to jest z innego źródła:

#block out any script trying to base64_encode data within the URL.
RewriteCond %{QUERY_STRING} base64_encode [^(]*\([^)]*\) [OR]

#block out any script that includes a <s-cript> tag in URL.
RewriteCond %{QUERY_STRING} (<|%3C) ([^s]*s) +script.* (>|%3E) [NC, OR]

#block out any script trying to set a PHP GLOBALS variable via URL.
RewriteCond %{QUERY_STRING} GLOBALS (=|\[|\%[0-9A-Z] {0,2}) [OR]

#block out any script trying to modify a _REQUEST variable via URL.
RewriteCond %{QUERY_STRING} _REQUEST (=|\[|%[0-9A-Z] {0,2})

#return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]

zwiastun
23-05-2013, 22:12
A po co tam w ogóle mieszać? Przytoczony przez Ciebie fragment pochodzi z wcześniejszych wersji Joomla. Jest to standardowy zestaw reguł, którzy projektanci Joomla zameszczają w aktualnej wersji w każdym wydaniu.

cliper
23-05-2013, 22:32
Aha rozumiem. Bardzo dziękuje - bym gape popełnił.
Chodzi o to, że nie chce nic zmieniać w swoim pliku.
Pisze prace mgr. odnośnie bezpieczeństwa, i chciałbym wpisać w niej:
- strony na których sa podane nowe wazne dyrektywy (oficjalne najlepiej)
- przytoczyc kilka z nich najwazniejszych.

co na pewno ich nie ma w Joomala!2.511.

zwiastun
23-05-2013, 23:50
no to ja ci serdecznie współczuję. Pisząc pracę magisterską na temat bezpieczeństwa (Joomla?, witryn?) powinieneś - moim zdaniem - na tyle zgłębić temat, żeby takich gaf nie popełniać (ale kto nie popełnia gaf). Niemniej, zalecenia od przykładów to mógłbyś już umieć rozróżnić. Zalecenia są na pewno aktualne, przykłady niekoniecznie, konkretne rozwiązania, dyrektywy również (są tam np. dyrektywy odnoszące się do PHP, którego jeszcze tylko dinozaury używają)

cliper
24-05-2013, 09:09
Ja jeszcze nie zaczolem opisywać dyrektyw, etc. Dopiero zabrałem się za to - wyszukiwanie info w sieci.
Dowiem sie w forach kilka przydatnych informacji i będę pisał prace od poniedziałku.

Znalazłem w sieci:
"Dyrektywy .htaccess sąą serwera Apache.One nie są zależne od danego cms".
__________________________________________________ ______________________
Mam pytania:
1) Czy tej stronie są aktualne informacje odnośnie bezpieczeństwa Joomla!?:
http://docs.joomla.org/Security
2) Co jest podane na tej stronie - to mogę użyć w swojej pracy?

Proszę o odp.

zwiastun
24-05-2013, 10:43
Ale ja Ci nie napisałem, ze dyrektywy na http://wiki.joomla.pl są nieaktualne. Ba, w kolejnym poście napisałem nawet, gdzie są zawsze aktualne - domyślny plik .htaccess umieszczony jest w każdym pakiecie instalacyjnym (htaccess.txt). Składnia dyrektyw w pliku .htaccess też, o ile mi wiadomo od wielu lat nie uległa zmianie. Natomiast zmianom ulega oprogramowanie, rozwija się php, mysql, rozwija się Joomla, wzrastają możliwości i naruszenia integralności danych i ich ochrony, itd.
Materiały w obu serwisach są mniej lub bardziej aktualne. Nawet jeśli były ostatnio redagowane, co łatwo sprawdzić w historii, nie znaczy to, ze usunięto z nich wszystkie mniej aktualne informacje.


Dowiem się w forach kilka przydatnych informacji i będę pisał prace od poniedziałku.
Fora są niewątpliwie pomocne, wiele na nich wypowiedzi kompetentnych osób, ale nie jest to źródło wiedzy pewnej - do jej weryfikacji, tak jak do weryfikacji wiedzy w serwisach społecznościowych (takich jak nasze czy oficjalne wiki Joomla) trzeba się posłużyć własną wiedzą wyniesioną z lektur i praktyki oraz logiką.

Materiały na docs.joomla.org są szybciej i częściej aktualizowane, a przy tym tworzą je fachowcy z całego świata, więc zawsze warto się do nich odnosić.

PS. Skoro już będziesz (jak rozumiem) studiować te materiały, to może podjąłbyś się naniesienia korekt tam, gdzie są potrzebne albo zauważysz, że trzeba oraz oznakowania, których wydań dotyczą poszczególne materiały lub ich części. Jeśli tak, zgłoś - założę Ci konto umożliwiające dokonywanie zmian oraz udzielę stosownej pomocy.

cliper
24-05-2013, 13:49
Nawet jeśli były ostatnio redagowane, co łatwo sprawdzić w historii, nie znaczy to, ze usunięto z nich wszystkie mniej aktualne informacje.
Rozumiem-dzięki. - dowiem się pytając u nich docs.joomla.org, jak to dokładnie jest.


Myślę, ze można by było zrobić nowy dział czy chociaż 1 podrozdział dla wersji stabilnej Joomla!2.5.11.
Rozpocząć od podania:
Utworzyć dział Joomla!2.5.x i podrozdziały:
1) z artykułami o: wymagań systemu i informacji o sprawdzeniu czy hosting spełnia wymagania. Zrzuty pakietu instalacyjnego, każdego z opisem. Podanie linku gdzie jest najnowsza wersja stabilna 2.5.x. Jak przejść prawidłowo z wersji niższej do 2.5
2) Utworzyć dział bezpieczeństwo - który wspólnymi siłami byśmy zapełnili.
4).. Z czasem ktoś by utworzył kolejne działy np. zarządzanie menu, moduły zarządzania: itp -tak jak jest w tej stronie docs.joomla.org.

zwiastun
24-05-2013, 14:45
1.

dowiem się pytając u nich docs.joomla.org, jak to dokładnie jest.
Jest tak, jak Ci napisałem :)
2. W wiki działy (kategorie) tworzą się automatycznie - wystarczy, że jakiś materiał zostanie oznaczony etykietą kategorii, nawet nieistniejącej.
3. Działy i materiały dla wersji 2.5 oraz 3.x już istnieją, o czym można się przekonać chociażby na stronie startowej (Linki w module Ekrany pomocy), czy przejrzeniu kategorii głównej Joomla.
4. Dział "Bezpieczeństwo", jak pewno zauważyłeś, już istnieje i znajduje się w nim większość z materiałów, które w dziale bezpieczeństwo znajdują się w witrynie docs.joomla.org.
http://wiki.joomla.pl/Kategoria:Bezpieczeństwo
Materiały dotyczące bezpieczeństwa odnoszą się do wszystkich wersji Joomla, choć w przypadku niektórych praktycznych receptur mogą się różnić np. poleceniami.
5. Materiały dotyczące Joomla 2.5, 3.5 powoli powstają. Nie jest to takie proste, jak się wydaje, bo - pominąwszy problem ze spamowaniem, to chętnych autorów, niestety, kolejka nie stoi.
Niemniej już trochę jest:
http://wiki.joomla.pl/Instalacja_Joomla_-_zasoby
http://wiki.joomla.pl/J25:Instalacja_Joomla!
http://wiki.joomla.pl/J35:Instalacja_Joomla!
http://wiki.joomla.pl/J2.5:Pierwsze_kroki_z_Joomla!
http://wiki.joomla.pl/J3.5:Pierwsze_kroki_z_Joomla!

Wracając do Twojej gotowości pomocy: nie wiem, jaki jest zakres Twojej pracy, ale jeśli dotyczy ona bezpieczeństwa Joomla, to pełniejszego i aktualniejszego zbioru materiałów, niż jest tutaj: http://wiki.joomla.pl/Kategoria:Bezpieczeństwo nie znajdziesz. Natomiast rzeczywiście wymaga on przeglądu, uaktualnienia, drobnych uzupełnień. Jak rozumiesz, przyjdzie Ci to w dużej mierze przeczytać. A skoro tak, to dysponując odpowiednimi uprawnieniami, mógłbyś dokonać stosownych korekt. Jak pewno wiesz, zmiany w wiki można w każdej chwili wycofać, tak że mógłbyś się przyczynić bez obaw, ze coś zepsujesz. Kwestia decyzji, czy chcesz. Do własnych dodanych materiałów (jesli np. udostępnisz coś z opracowań zrobionych w ramach pacy magisterskiej) zachowujesz prawa autorskie, więc mogą się nawet ukazac, zanim obronisz prace magisterską :)

ugly kid joe
24-05-2013, 18:22
ja pierniczę, jeden magister - pisze magisterkę o bezpieczeństwie i nie wie o czym, drugi - inżynier będzie budował sklep ze zrobionych już elementów.

świat oszalał, idę siku !

mjmartino
24-05-2013, 18:32
@ugly kid joe i takich właśnie będziemy mieć inż. i mgr ... Jeśli takie podejście mają to raczej ciężko będzie się obronić.. Już lepszym rozwiązaniem było zlecić komuś napisanie i wykucie tej pracy na blachę heh.. Do czego oczywiście nie namawiam!
Ale pojęcie trzeba mieć a po drugie dobrać sobie promotora który będzie chętny do pomocy.. bo są tacy co zlewają wszystko i radź pan sobie sam.
Całe szczęście że to wszystko już za mną :)

ugly kid joe
24-05-2013, 19:13
najgorsze jest to, że on tę pracę obroni, bo pewnie absolwent szkoły niepublicznej. ja nadal wierzę, że te publiczne realizują jeszcze jakiś program ... ale najśmieszniejsze jest to, że taki inżynier jest w stanie wysiudać z pracy przy pos'ie - w jednym z barów z bułką i kotletem - pracownika, który jest rzetelny, ale nie jest inżynierem, wszak do pracy z pos'em trzeba mieć pojęcie w co klikać i jak zrobić podsumowanie dnia.

cliper
27-05-2013, 14:26
Wracając do Twojej gotowości pomocy: nie wiem, jaki jest zakres Twojej pracy, ale jeśli dotyczy ona bezpieczeństwa Joomla, to pełniejszego i aktualniejszego zbioru materiałów, niż jest tutaj: http://wiki.joomla.pl/Kategoria:Bezpieczeństwo nie znajdziesz.

Dzięki za podanie tej strony. Ona dużo mi pomoże.

Niebawem dam znać jak mi poszło z pracą.. i czy wyjdzie coś z Pana pomysłu czy jednak nie dam rady.

Alinoe
27-05-2013, 21:08
w tym temacie bo sprwa dotyczy pliku htaccess mianowicie zauważyłem że obecnie plik wygląda tak:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^.*(google|ask|yahoo|yandex|ya|baidu|youtube|wikip edia|qq|excite|altavista|msn|netscape|aol|hotbot|g oto|infoseek|mamma|alltheweb|lycos|search|metacraw ler|bing|dogpile|facebook|twitter|blog|live|myspac e|linkedin|flickr|filesearch|yell|openstat|metabot |gigablast|entireweb|amfibi|dmoz|yippy|walhello|we bcrawler|jayde|findwhat|teoma|euroseek|wisenut|abo ut|thunderstone|ixquick|terra|lookle|metaeureka|se archspot|slider|topseven|allthesites|libero|clicke y|galaxy|brainysearch|pocketflier|verygoodsearch|b ellnet|freenet|fireball|flemiro|suchbot|acoon|deva ro|fastbot|netzindex|abacho|allesklar|suchnase|sch nellsuche|sharelook|sucharchiv|suchbiene|suchmasch ine|infospace|web|websuche|witch|wolong|oekoportal |freenet|arcor|alexana|tiscali|kataweb|voila|sfr|s tartpagina|kpnvandaag|ilse|wanadoo|telfort|hispavi sta|passagen|spray|eniro|telia|bluewin|sympatico|n lsearch|atsearch|klammeraffe|sharelook|suchknecht| ebay|abizdirectory|alltheuk|bhanvad|daffodil|click 4choice|exalead|findelio|gasta|gimpsy|globalsearch directory|hotfrog|jobrapido|kingdomseek|mojeek|sea rchers|simplyhired|splut|thisisouryear|ukkey|uwe|f riendsreunited|jaan|qp|rtl|apollo7|bricabrac|findl oo|kobala|limier|express|bestireland|browseireland |finditireland|iesearch|kompass|startsiden|confex| finnalle|gulesider|keyweb|finnfirma|kvasir|savio|s ol|startsiden|allpages|america|botw|chapu|claymont |clickz|clush|ehow|findhow|icq|westaustraliaonline )\.(.*)
RewriteCond %{HTTP_USER_AGENT} ^.*(msie|opera) [NC]
RewriteCond %{REQUEST_FILENAME} !/index_backup.php
RewriteRule (.*) /index_backup.php?query=$1 [QSA,L]
</IfModule>

Udało mi sie już doczytać że strona został zainfekowana pousuwałem już plik index_backup.php oraz inne podejrzane. teraz Chiałbym wyczyscić lub napisać poprawnie kod w pliku htaccess gdzie mógłbym znaleźć taki gotowy, kóry pasłowałby do strony - system jommla 1,5 czy wystarczyłoby abym podmienił ten plik z katalogu głownego i zamienił z txt. Czy mógłbym jednak znaleść taki kod źródłowy, kóry zabezpieczył by stronę, przed podobnymi atakami? czy ogólnie zapomnieć o sprawie ( bo ataki będą sie powtarzać) i starać się zrobić migrację do nowszej wersji joomli.

Alinoe
27-05-2013, 22:17
Plik htaccess znalazłem

alex51
28-05-2013, 07:47
Oprócz wskazanego i jak sądzę podmienionego pliku .htaccess sprawdź czy w głównym katalogu masz wgrane jeszcze inne obce pliki. Jeden z nich jest wskazany w tym cytowanym kodzie - index_backup.php. Być może znajdą się jeszcze inne, odpowiedzialne m.in. za wysyłanie spamu z zainfekowanej witryny. Najprędzej zlokalizujesz te pliki porównując zawartość serwera z posiadaną wcześniejszą kopią bezpieczeństwa witryny lub z zawartością paczki instalatora Joomla!. Możesz też prześledzić zawartość serwera pod kątem aktualizacji jego plików w czym pomocnym może być ten skrypt (http://www.twooje.info/wypier.rar). Wgranie go do głównego katalogu serwera i wywołanie w przeglądarce pokaże listę ostatnio modyfikowanych lub wgrywanych plików, uszeregowaną według dat.
Możesz też sprawdzić pliki serwera przeszukując je na obecność w ich zawartości frazy "base64". Obecność takiej frazy z dużą dozą prawdopodobieństwa świadczy o wstawieniu takiego pliku przez włamywacza.

Alinoe
28-05-2013, 09:27
Wielkie dzięki będę próbował to wszystko naprawić.
Mam pytanie w jaki sposób mógłbym przeszukiwać pliki po ich zawartości, bo na pewno bu mi to ułatwiło wyszukiwanie i ewentualnie wykasowanie plików obecnie muszę wkochdzić do każdego katalogu i ręcznie usuwać lub je modyfikować. Czy jest to uzależnione od dostawcy serwera - cy są mozę programy, kóre dają taką możliwość korzystam z winscp do połączenia?

alex51
28-05-2013, 09:46
By przeszukać zawartość plików trzeba je najpierw pobrać z serwera, najlepiej za pomocą komponentu Akeeba, tworząc zarazem kopię bezpieczeństwa witryny, w tym przypadku lepiej by była ona zrobiona w formacie archiwum zip (dla łatwiejszego rozpakowania, choć zalecany format jpa też można rozpakować, ale specjalnym narzędziem - Akeeba eXtract Wizard (https://www.akeebabackup.com/downloads/akeeba-extract-wizard.html)). Tak przygotowaną kopię bezpieczeństwa należy pobrać i rozpakować na dysku swojego komputera i przeszukać za pomocą np. Total Commandera (Polecenia=>Znajdź=>opcja Znajdź tekst), wskazując w wyszukiwaniu podany tekst base64.