Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [security]kod w obrazku .jpg
Black-Berry
post
Post #1





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Odnosząc się do postu:
Cytat(kiler129 @ 11.05.2008, 23:24:41 ) *
...dodajac do pliku php na poczatku pierwsze kilka KB z obrazka i nadajc rozszeznie .jpg mozna upnac kod php co mi sie bardzo nie podoba
Przepraszam, że powielam temat ale ponieważ nie wiem o tym zupełnie nic będzie to dystkusja na wiele niższym poziomie...

Czy rzeczywiście takie coś jest możliwe? Kiedy taki kod się wykona? Czy zaraz po wysłaniu obrazka formularzem? Czy dopiero po próbie wyświetlenia zainfekowanego obrazka?

Edit: Co zrobić jeśli nie używamy bibliotek GD? Konwersja funkcją imagecopyresampled() nie zawsze jest rozwiązaniem bo powoduje utratę jakości.

Ten post edytował Black-Berry 13.05.2008, 18:27:08
Go to the top of the page
+Quote Post
Babcia@Stefa
post
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 17
Dołączył: 19.03.2006
Skąd: z kosmosu ;)

Ostrzeżenie: (0%)
-----


To jest mało prawdopodobne jak dla mnie ponieważ parser PHP standardowo jest wyłączony dla obrazków (rozszeżenie), w htaccess możesz jedynie ustawić parser na czytanie gifów, jpegów itp.

Gdzieś tam miałem taką klasę (dawno ją pisałem (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ):

http://manual.babciastefa.boo.pl/download/...ment.class.phps - Sama klasa
http://manual.babciastefa.boo.pl/download/db.eme - Baza danych klasy
http://manual.babciastefa.boo.pl/download/E.M.E.test.phps - Przykład

Klasa sprawdza nagłówki dla odpowiednich formatów (sprawdza czy ktoś nie oszukuje).
Jednak jeśli masz włączone czytanie przez parser PHP obrazki to mm... chyba jednak klasa Ci nie pomoże, bo ktoś wrzuci na początku kawałek np. GIF... - nagłówek gifa a później kod PHP (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

1. Sprawdzaj obrazek przez GD
2. Nie ustawiaj intepretera PHP na pliki obrazkowe

@edit
Poprostu użyj getimagesize() do sprawdzenia obrazku, nie generuj go od nowa (IMG:http://forum.php.pl/style_emoticons/default/haha.gif)
Po wywołaniu obrazka wywoła się kod.
Dziękuję, Babcia@Stefa

Ten post edytował Babcia@Stefa 13.05.2008, 18:40:39
Go to the top of the page
+Quote Post
b_chmura
post
Post #3





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

Ostrzeżenie: (0%)
-----


Babcia@Stefa - nie zrozumiałeś Black-Berry. On mówi o tym ze jeśli w pliku z rozszerzeniem PHP kilka pierwszych kb będzie z obrazka plik przejdzie jako obrazek.

Black-Berry - prawdy powiedziawszy nigdy się z tym nie spotkałem, zaraz zrobię parę testów. Nie mniej jednak zawsze możesz sprawdzać rozszerzenia (3 ostatni znaki za wyjątkiem jpeg)
Go to the top of the page
+Quote Post
l0ud
post
Post #4





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Cytat
Babcia@Stefa - nie zrozumiałeś Black-Berry. On mówi o tym ze jeśli w pliku z rozszerzeniem PHP kilka pierwszych kb będzie z obrazka plik przejdzie jako obrazek.


Plik przejdzie jako obrazek, ale to nic nie da, bo zapisze się pod rozszerzeniem obrazkowym. Jedyna groźba to lokalne zaincludowanie tego pliku, ale to inna dziura która nie występuje w dobrze napisanym skrypcie.

[edit]

Oczywiście mam na myśli pliki w których rozszerzenie jest dodawane 'ręcznie'. Zapisywanie plików o dokładnie takiej samej nazwie jak wejściowe to oczywiście głupota.

Ten post edytował l0ud 13.05.2008, 19:33:36
Go to the top of the page
+Quote Post
Black-Berry
post
Post #5





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


@b_chmura Zrobiłeś juz może testy? Co z nich wyniknęło?

Czysto teoretycznie to jak ktoś mógłby wykonać taki skrypt? Np taki ustawiający sesję $_SESSION['admin_logged'] na true wydaje się być niebezpieczny... Jeśli się się dłużej zastanowić to uzyskanie dostępu do admina to jest najmniejszy problem. Taki haker mógłby przecież skasowac cały katalog ze stroną!

Znacie może inne możliwości takich włamów które pozwalają wykonać skrypt hakera? Myślałem, że takie rzczeczy to bajka?!

Ten post edytował Black-Berry 14.05.2008, 19:56:36
Go to the top of the page
+Quote Post
b_chmura
post
Post #6





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

Ostrzeżenie: (0%)
-----


Testowałem, na moim serwerze nie ma takiej możliwości jednak w innym podobnym wątku twierdzą że przy jakiejś innej konfiguracji apache istnieje taka możliwość.
Go to the top of the page
+Quote Post
Babcia@Stefa
post
Post #7





Grupa: Zarejestrowani
Postów: 654
Pomógł: 17
Dołączył: 19.03.2006
Skąd: z kosmosu ;)

Ostrzeżenie: (0%)
-----


Cytat(b_chmura @ 13.05.2008, 18:28:11 ) *
Babcia@Stefa - nie zrozumiałeś Black-Berry. On mówi o tym ze jeśli w pliku z rozszerzeniem PHP kilka pierwszych kb będzie z obrazka plik przejdzie jako obrazek.

Black-Berry - prawdy powiedziawszy nigdy się z tym nie spotkałem, zaraz zrobię parę testów. Nie mniej jednak zawsze możesz sprawdzać rozszerzenia (3 ostatni znaki za wyjątkiem jpeg)


No to w takim razie parser jest ustawiony na włączony w pliku *.php, *.php4, *.php5 a więc jeśli na początku będzie obrazek to i tak kod się wykona, ale na początku będzie tylko kod obrazka, oczywiście mogą wystąpić problemy z używaniem wtedy funkcji header()" title="Zobacz w manualu PHP" target="_manual itp.

Pozdrawiam, Babcia@Stefa
Go to the top of the page
+Quote Post
pyro
post
Post #8





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Kod PHP da się przemycić w obrazkach i jak sie otworzy ten obrazek to nie jest wykonywany żaden kod, ale taki kod można ZAINCLUDOWAĆ, dlatego jest on szczególnie niebezpieczny przy atakach Local File Inclusion, aby się zabezpieczyć chyba wystarczy funkcja getimagesize()" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
.radex
post
Post #9





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


btw. Do poczytania: http://pornel.net/captcha
Go to the top of the page
+Quote Post
pyro
post
Post #10





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(radex_p @ 16.05.2008, 19:59:24 ) *
btw. Do poczytania: http://pornel.net/captcha


Co captcha ma wspólnego z tematem o.O?
Go to the top of the page
+Quote Post
.radex
post
Post #11





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


No fakt.... Widziałem wiele takich tematów i kiedy zobaczyłem "kod w obrazku .jpg" od razu pomyślałem o CAPTCHA (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
stygma
post
Post #12





Grupa: Zarejestrowani
Postów: 32
Pomógł: 1
Dołączył: 10.11.2007

Ostrzeżenie: (0%)
-----


Cytat
...dodajac do pliku php na poczatku pierwsze kilka KB z obrazka i nadajc rozszeznie .jpg mozna upnac kod php

Można cały kod wstawić do exif jpeg-a i jeżeli obrazek jest załadowany przez ftp do katalogu, który nie jest zabezpieczony przed uruchamianiem plików php mozna go uruchomić.

pozdrawiam stygma
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 12:24