Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zabezpieczenie przed uploadem obrazka z wirusem, exif tags obrazka z kodem php
daren88
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 3.09.2011

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


Witam

Istnieje możliwość zapisania w exif tags obrazka kodu php co może być niebezpieczne.
Napisałem bardzo prosty skrypt do sprawdzania kodu php w obrazkach i mam prośbę o sprawdzenie czy ten kod wystarczy, sprawdzałem kod i rzeczywiście odróżnia
obrazek z niebezpiecznym kodem od zwykłego obrazka ale może ktoś z was ma inne zdanie i wie jak oszukać ten skrypt (IMG:style_emoticons/default/questionmark.gif) ? (IMG:style_emoticons/default/guitar.gif)

  1. $get = file_get_contents( $_FILES['img']['tmp_name'] );
  2.  
  3.  
  4.  
  5. $pattern = '/<?php./';
  6.  
  7. if( preg_match($pattern,$get, $matches, PREG_OFFSET_CAPTURE) ){
  8.  
  9. echo' obrazek z kodem php ';
  10.  
  11. }
  12. else{
  13.  
  14. echo' nie ma kodu php';
  15.  
  16. }



Pomijam resztę zabezpieczeń post jest tylko o exif tags. Bardzo fajny artykuł na ten temat jest tutaj http://php.webtutor.pl/pl/2011/04/11/code-...w-obrazku-jpeg/ ale nie ma tam info jak wykryć niebezpieczny kod.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Przede wszystkim trochę źle do tego podchodzisz. W obrazie może być ciąg bajtów odpowiadający przykładowo "<?php `rm / -rf`; ?>" ale czy to oznacza, że obraz zawiera "wirusa"? Nie. Dlaczego? Z tego samego powodu, dla którego ten post, który jest w bazie danych forum PHP.pl, nie jest wirusem mimo iż zawiera potencjalnie bardzo niebezpieczny kod.

Podstawą jest tutaj odpowiednie obchodzenie się z danymi. Podobnie jak nikt nigdy nie dopuści do tego by ten post (jego treść) została potraktowana evalem() podobnie Ty nigdy nie powinieneś dopuścić by obraz został potraktowany inaczej niż "do odczytu obrazu". Możesz oczywiście sprawdzać czy wgrywany obraz jest obrazem - czy da się go odczytać jako prawidłowy obraz zapisany w danym formacie, ale wyszukiwanie w nim "złośliwych" treści jest nieco bezcelowe.
Go to the top of the page
+Quote Post

Posty w temacie
- daren88   Zabezpieczenie przed uploadem obrazka z wirusem   24.11.2011, 17:04:11
- - darko   Żartujesz sobie, prawda?   24.11.2011, 17:14:14
|- - pyro   Cytat(darko @ 24.11.2011, 17:14:14 ) ...   24.11.2011, 17:43:58
- - daren88   czemu miałbym żartować ? jeżeli ktoś zapisze w exi...   24.11.2011, 17:24:33
- - erix   CytatŻartujesz sobie, prawda? Nie żartuje. Osobiśc...   24.11.2011, 23:20:54
- - darko   Nie chodziło mi o samą możliwość takiego ataku, bo...   25.11.2011, 03:07:54
- - eccocce   Niebezpieczny nie jest sam kod doklejony do obrazk...   25.11.2011, 07:57:22
- - cojack   Obrazek z jakimś kodem nie będzie miał poprawnego ...   25.11.2011, 13:20:18
- - Niktoś   A nie wystarczy sprawdzać pierwszych 250 bitów obr...   25.11.2011, 14:23:00
|- - pyro   Cytat(Niktoś @ 25.11.2011, 14:23:00 )...   25.11.2011, 21:09:43
|- - cojack   Cytat(pyro @ 25.11.2011, 21:09:43 ) N...   26.11.2011, 13:43:37
|- - pyro   Cytat(cojack @ 26.11.2011, 13:43:37 )...   26.11.2011, 16:17:21
- - daren88   Cytat(cojack @ 25.11.2011, 13:20:18 )...   25.11.2011, 14:24:43
- - cojack   includowałeś kiedyś obrazek w kodzie php? Oo   25.11.2011, 16:19:59
- - erix   CytatNiebezpieczny nie jest sam kod doklejony do o...   25.11.2011, 17:40:46
|- - eccocce   Cytat(erix @ 25.11.2011, 17:40:46 ) [...   28.11.2011, 12:42:05
- - darko   Mime/type też można oszukać, nigdy nie masz pewnoś...   25.11.2011, 17:42:09
- - viking   http://www.php.net/manual/en/function.imagick-stri...   26.11.2011, 08:42:11
- - erix   CytatMime/type też można oszukać, nigdy nie masz p...   26.11.2011, 15:37:05
- - szmerak   Ja na twoim miejscu poświęcił trochę więcej czasu ...   26.11.2011, 15:54:25
- - Niktoś   Próbuje utworzyć plik ze skryptem javascript ,ale ...   26.11.2011, 16:08:22
- - szmerak   http://www.programosy.pl/program,exifeditor.html t...   26.11.2011, 16:10:09
- - Niktoś   Cytat<style>body{font-size: 0;} h1{font-size...   26.11.2011, 16:11:22
- - szmerak   No to dopisz sobie cos w C tam masz tutki powyzej ...   26.11.2011, 16:12:43
- - Niktoś   a jscript tam można podpiąć ,czy tylko bloki serwe...   26.11.2011, 16:14:24
- - Niktoś   Puki co według tego przykładu ,zrobiłem plik w któ...   26.11.2011, 16:52:44
- - szmerak   Znalazłem to w kodzie php-fusiona.. Sądze ze jest ...   26.11.2011, 21:18:27
|- - szmerak   Cytat(szmerak @ 26.11.2011, 21:18:27 ...   27.11.2011, 14:53:59
- - Niktoś   Według tego programu zrobiłem coś takiego: Cytat...   26.11.2011, 22:04:56
- - szmerak   Nie wiem nie sprawdzałem ale zaraz zobacze to ci p...   26.11.2011, 22:12:31
- - Niktoś   Mi po prostu w c# Net nie przepuszcza takich plikó...   26.11.2011, 22:35:32
- - cojack   kto wczytuje obrazki includem/requirem? @erix mia...   27.11.2011, 09:48:24
|- - pyro   Cytat(cojack @ 27.11.2011, 09:48:24 )...   27.11.2011, 10:50:35
- - ast89   Oprócz sprawdzenia typu MIME można użyć funkcji g...   27.11.2011, 14:29:39
|- - szmerak   Cytat(ast89 @ 27.11.2011, 14:29:39 ) ...   27.11.2011, 14:40:45
- - Niktoś   Nie wierze ,że nie ma na to rady jak w net.C# sobi...   27.11.2011, 14:49:34
- - !*!   Czyli ta funkcja verify_image to dobre zabezpiecze...   27.11.2011, 15:04:32
- - Crozin   Przede wszystkim trochę źle do tego podchodzisz. W...   27.11.2011, 15:50:48
- - Niktoś   CytatCzyli ta funkcja verify_image to dobre zabezp...   27.11.2011, 16:39:01
- - Uriziel01   Po jaką cholere wam te sprawdzanie ? Przecież i ta...   28.11.2011, 11:23:45
- - pyro   Cytat(Uriziel01 @ 28.11.2011, 11:23:4...   28.11.2011, 14:35:39
- - eccocce   Pyro tu chyba toczy się rozmowa pod tematem ...   28.11.2011, 16:59:01
|- - pyro   Cytat(eccocce @ 28.11.2011, 16:59:01 ...   28.11.2011, 19:32:56
- - szmerak   No ale właśnie przez podatność na "File Inclu...   28.11.2011, 18:04:08
- - Crozin   Trzeba się zabezpieczać, a nie z góry planować min...   28.11.2011, 18:22:39
- - Niktoś   CytatLepiej sprawdzić czy gdzieś nie ma możliwości...   28.11.2011, 18:30:34
- - darko   Ciekawe czy takie wykrywanie i raportowanie działa...   28.11.2011, 19:48:19
- - by_ikar   Nie dam sobie ręki uciąć, ale chyba zmniejszenie o...   29.11.2011, 09:43:39


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: 9.10.2025 - 02:09