#1 21-10-2008 22:23:24

ReporteR

Administrator

2334284
Skąd: C:\WINDOWS\
Zarejestrowany: 21-10-2008
Posty: 20
Punktów :   
WWW

[Tutorial] Hacking JPortal 2

Poziom: Średni

Każdy od czegoś zaczynał. My dzisiaj zaczniemy przygodę z JPortalem - powędrujemy przez kolumny, tabele, aż w końcu dojdziemy do celu - loginu i hasła administratora strony

Co potrzebujemy:

- Podstawową wiedzę o SQL Injection ( union select ),
- Stronę opartą na CMS'ie JPortal 2,
- Myszkę, klawiaturę, internet, po wejściu we wprawę ok. 2 min. na rozwalenie stronki.

Zaczynamy ! Najpierw potrzebujemy jakiejś strony opartej na JPortalu. Dlaczego ? Ponieważ ten CMS jest dziurawy jak ser szwajcarski. I to już nie moja opinia - ale widoczny fakt ! Ale nie o tym chcę pisać. Ok, powrót do tematu. Skorzystamy z Google Doorka

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Takie zapytanie do wujka google'a zwróci nam masę stron ( polskich i zagranicznych ) opartych na tym CMS'ie. Wybieramy 1 na przynętę - aby nie była to jakaś zwykła stronka, wezmę taką z domeną .PL, czyli posłużymy się przykładem:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

No dobrze, stronę już mamy, co dalej ? Musimy teraz znaleźć błąd. Na czym to polega - musimy spowodować, że baza danych zwróci wartość błędną po podaniu do niej nieprawdziwego zapytania, np. id=-1. Jak wiemy - może być 1 post, 2 post, ale nie ma -1 posta W przypadku JPortala znajdziemy błąd w każdym ( prawie ) zapytaniu ID - nie jest ono filtrowane. No dobrze, więc zobaczmy coś takiego:


[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Wyświetli się sama strona - bez żadnych danych. Po prostu tj. pusty artykuł. Wywołajmy błąd, czyli zakończmy polecenie SQL.

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Co widzimy ?

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

To będzie nasz przewodnik. Teraz musimy zbudować zapytanie z union select ( SQL Injection ).

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Zapytanie to daje nam to samo co zapytanie z -1'. Ale zauważcie, że tu już nie ma '. Teraz pojawiło się polecenie union select. A oto dokładne wyjaśnienie co jest czym:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

No, teraz czas na dodawanie po kolei tabel tak długo, aż błąd się nie pojawi. Jedziemy po kolei:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Dalej mamy błąd. Ale teraz:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

błędu nie ma ! Zniknął. Zamiast tego obok "Artykuły >" pojawiła się liczba 2:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Ta 2 to numer tabeli, w który możemy "wstrzyknąć" nasz kod. No to zaczynamy. Wywołamy polecenie concat:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Polecenie nie zostało wykonane. Zamiast tego znów mamy error. Dlaczego ? Bo nie ma w zapytaniu skąd ma pobrać te dane. Oto poprawne zapytanie:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Objaśnienie:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

No to mamy:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Pamiętajcie, że hasło jest zakodowane w algorytmie MD5 ! Musicie je odkodować. Polecam stronkę:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Wklejamy hash, przepisujemy kod z tokena, i już mamy wynik !

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Czyli jak widać:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

Teraz wystarczy wejść w panel administratora:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

I zalogować się na zdobyte dane Prawda że proste ? I szybkie. Wbrew pozorom nie jest to takie trudne, na jakie wygląda. Po kilku próbach sami będziecie poprawiać swoje błędy, i śmiać się z twórców JPortala Na koniec małe informacje:

1. W JPortalu liczba kolumn zawsze ( 99,99% ) wynosi 5. Czyli zawsze wpisujemy 1,2,3,4,5--
2. Aby wgrać shella, wchodzimy na panel administratora, w menu klikamy "Download", i w "Uploaderze" podajemy ścieżkę do shella ( do shell.php ). Następnie przechodzimy do http://www.strona.pl/uploads/download/n … hella.php. I już Na naszym przykładzie jest to:

[Musisz być zalogowany, aby przeczytać ukrytą wiadomość]

3. Nie ruszajcie podaje w przykładzie strony - każdy chce zobaczyć ! Nie zmieniajcie nic, po prostu uszanujcie to, że inni też chcą z tego skorzystać.
4. Ten tutorial został stworzony WYŁĄCZNIE W CELACH EDUKACYJNYCH, i nie ponoszę odpowiedzialności za nieumiejętne lub niezgodne z prawem wykorzystanie jego zawartości. Musiałem to napisać...

Pozdrawiam, i zapowiadam następny tutorial, w którym bardziej zgłębimy tajemnice SQL Injection. Poznamy ataki na strony oparte na komercyjnych CMSach, a także wykorzystamy w nich atak IS ( Information.Schema ). Gorąco zapraszam wszystkich do rejestracji - tylko wtedy zobaczycie co kryje się w ukrytym tekście

Offline

 
Copyright 2008 by ReporteR. Wszystkie tematy, posty oraz wiadomości tego serwisu nie mogą być kopiowane bez zgody autora lub administratora !

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
www.tm.pun.pl www.ndcs.pun.pl www.gwardiasqd.pun.pl www.forumijmuiden.pun.pl www.thecrips.pun.pl