Wpis z mikrobloga

Funkcjonalność wysyłania plików to miejsce kluczowe dla bezpieczeństwa.
Dzisiaj w #od0dopentestera omówię rozszerzenia na które warto zwrócić szczególną uwagę.

Jakie formaty graficzne znasz?

ALLOWED_EXTENSIONS = set(['pdf', 'png', 'jpg', 'svg', 'swf', 'jpeg', 'gif'])
Flash lata swojej świetności ma dawno za sobą.
Większość użytkowników kojarzy go z prostych mini gier dostępnych parę lat temu.
Posiada on jednak możliwość wykonywania kodu #javascript.
Jeżeli więc pozwalamy na wysyłkę i wyświetlanie plików swf, musimy liczyć się z konsekwencjami.

Ja użyje pliku xss.swf oraz Internet Explorera.
Dlaczego IE? Chrome od wersji 57 w standardowej konfiguracji nie uruchamia tych plików automatycznie.

xss.swf?a=eval&c=alert(document.domain)
Drugie potencjalnie niebezpieczne rozszerzenie to svg - czyli format grafiki wektorowej.
On również może zawierać w sobie kod #js.
Przykładowy plik można pobrać ze strony Sekuraka.

Jak popularny jest to błąd?
Na wysyłanie plików swf pozwalało DokuWiki czyli prosta alternatywa dla Wikipedii.
Podobna sytuacja z WordPressem.

W przeszłości pliki swf używane były do kopiowania tekstu ze strony do schowka.
Dalej więc na wielu witrynach można odnaleźć podatne pliki.

Jeżeli chcesz być wołany dodaj się do Mirkolisty.
Masz pytanie na temat bezpieczeństwa? Zadaj je na grupie od 0 do pentestera na Facebooku.

#python #security #bezpieczenstwo #programowanie #informatyka #it #nauka #technologia #ciekawostki
KacperSzurek - Funkcjonalność wysyłania plików to miejsce kluczowe dla bezpieczeństwa...
  • 6
@kiedystobyl0: Mime, czy tam content-type to informacje wysyłane przez przeglądarkę, czyli użytkownik moze z tym zrobić co chce. To samo tyczy się rozszerzenia pliku. Imo najbezpieczniejsze było by zastosowanie jakiejś biblioteki dedykowanej do weryfikacji typów plików na podstawie ich zawartości.