Archive for the ‘irk4z’ Tag

Can’t Stop

Niedługo minie rok od założenia mojego homepage’a. Dziękuje wszystkim, którzy odwiedzali przez ten czas moją stronę.

Ten wpis jest ostatnim w historii tego bloga. Niedługo planuje rozpocząć nowe projekty związane z siecią. Mam nadzieję że się Wam spodobają. pozdrawiam irk4z

Red Hot Chili Peppers – Can’t Stop

SQL Column Truncation Vulnerability po polsku

Kiedy dostałem linka od mojego znajomego do notki Stefana Essera na temat ciekawych podatności MySQL, od razu zacząłem testować popularne skrypty pod kątem tego typu błędów. Oczywiście rozpocząłem od WordPress ;] Niestety, najprawdopodobniej nie byłem pierwszy, bo (co w sumie logiczne) Stefan dużo wcześniej przetestował ten skrypt i poinformował o usterce programistów WordPress.

W każdym razie, poniżej postarałem się ująć w kilku przykładach istotę tej klasy podatności.

mysql> CREATE TABLE test (login varchar (20) );
Query OK, 0 rows affected (0.39 sec)

mysql> INSERT INTO test VALUES ( 'admin' );
Query OK, 1 row affected (0.36 sec)

mysql> select * from test;
+-------+
| login |
+-------+
| admin |
+-------+
1 row in set (0.01 sec)

próba wstawienia 21-znakowego ciągu do pola 20 znakowego
powoduje obcięcie i wyrzucenie nadmiaru znaków (czyli
w tym wypadku wyrzucenie znaku 'x')

mysql> INSERT INTO test VALUES ( 'admin               x' );
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> select * from test;
+----------------------+
| login                |
+----------------------+
| admin                |
| admin                |
+----------------------+
2 rows in set (0.00 sec)

mysql> select hex(login) from test;
+------------------------------------------+
| hex(login)                               |
+------------------------------------------+
| 61646D696E                               |
| 61646D696E202020202020202020202020202020 |
+------------------------------------------+
2 rows in set (0.03 sec)

mysql> select * from test where login='admin';
+----------------------+
| login                |
+----------------------+
| admin                |
| admin                |
+----------------------+
2 rows in set (0.02 sec)

mysql> select * from test where login='admin                ';
+----------------------+
| login                |
+----------------------+
| admin                |
| admin                |
+----------------------+
2 rows in set (0.00 sec)

Poza tym MySQL w standardowej konfiguracji ma ustawioną opcje max_packet_size na jeden megabajt. Jest to maksymalny rozmiar pakietu możliwego do przesłania pomiędzy serwerem SQL a klientem. Zatem gdy zapytanie przekroczy tą wartość, nie zostanie w ogóle wykonane. Najczęściej spowoduje to błąd w aplikacji webowej która wykona takie query.

Poprzez odpowiednią manipulację rozmiarem danych, można doprowadzić do sytuacji w której część zapytań nie wykona się, właśnie z powodu przekroczonego rozmiaru zapytania, a część z zapytań wykona się normalnie. W konsekwencji aplikacja może np. przestać działać poprawnie, utworzyć błędy bypass, w ogóle przestać działać itp.

Mambo <= 4.6.4 Remote File Inclusion Vulnerability

Programiści Mambo nie przejrzeli dokładnie kodu swojego skryptu, zostawili możliwość zdalnego dołączenia swojego skryptu. Exploit działa gdy register_globals == ON. Tutaj znajduje się link do mojej publikacji na milw0rm.

phpBP <= RC3 (2.204) FIX4 Remote SQL Injection Vulnerability

Znalazłem podatność w phpbp w najnowszej wersji, ze wszystkimi fixami, błąd banalny, zwykłe przeoczenie programisty zamiast $_GET[‚id’] filtrował $_POST[‚id’].. Ogólnie kod skryptu ciekawy, choć jakbym dłużej nad nim posiedział to zapewne znalazł bym jeszcze kilka błędów. Brawo dla supportu phpbp (szczególnie dla Leszka Piątka) za szybkie wydanie odpowiedniego patcha 😉 Link do podatności na milw0rmie

fuzzylime cms <= 3.01 Remote File Inclusion Vulnerability

Sprawdziłem fuzzylime cms pod względem błędów i opublikowałem najważniejszy, który dostrzegłem. Błąd znajduje się w pliku /code/display.php. Wywołany z innego kontekstu, powoduje ze można dołączyć zdalnie plik. Poza tą podatnością znalazłem jeszcze kilka LFI, których na razie nie publikuje.

portalll – jego start

Wiem, wiem: miał ruszyć nowy portal, jednak z różnych przyczyn jeszcze nie wystartował :/ Dlaczego? na razie głównym powodem jest brak czasu/chęci (?) drugiego redaktora :PP Tak bywa, mam nadzieje że w niedługim czasie się coś ruszy z tym projektem.