OWASP Top 10 czyli co każdy…

OWASP Top 10 czyli co każdy programista o bezpieczeństwie wiedzieć powinien.
Dzisiaj o nieprawidłowym parsowaniu plików XML pochodzących od użytkownika. #od0dopentestera
XML w wolnym tłumaczeniu to Rozszerzalny Język Znaczników.
Przeznaczony jest do reprezentowania różnych danych w strukturalizowany sposób.
Gdy operujemy na dużych zbiorach danych niektóre informację się powtarzają.
W tym formacie można temu zapobiec stosując tak zwane encje.
Jest to pewnego rodzaju makro – definiujemy więc nazwę encji wraz z jej treścią.
Następnie w dokumencie używamy tej skróconej nazwy poprzedzonej ampresandem a parser automatycznie zamieni ją na tą dłuższą, zdefiniowaną wcześniej.
Encje te można zagnieżdżać – czyli z poziomu jednej odnosić się do kolejnej.
Zazwyczaj nie definiuje się maksymalnego poziomu takiej rekurencji.
Wtedy to mały plik przesłany przez użytkownika rośnie do ogromnych rozmiarów na serwerze.
Dodatkowo, treść encji może być pobierana z zewnętrznego pliku lub adresu.
Gdy ta funkcjonalność jest włączona – można ją wykorzystać do poznania treści tajnych plików, chociażby /etc/shadow pod Linuxem.
Treść tego pliku zostanie bowiem dodana do naszego wynikowego XML-a jeżeli jest on wyświetlany użytkownikowi.

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

#programowanie #security #informatyka #it #nauka #technologia #ciekawostki #gruparatowaniapoziomu #bezpieczenstwo #webdev #programista15k