[OT] Log4j - klice od pulky internetu

Jindrich Fucik fulda na seznam.cz
Středa Prosinec 15 22:24:38 CET 2021


>> Cokoli. Proste prinuti tu knihovnu, at neco stahne z internetu a 
>> spusti, pod pravy toho serveru. Samozrejme se bude lisit kus od kusu, 
>> jak zavazne to
> Prinuti je v tomhle pripade silne slovo. Tu knihovnu snad psaly opice
> ze tam zadelaly funkci kdy se do pruchozich dat da vlozit povel ke
> stazeni a spusteni kodu odkudkoliv. Navic presto ze tu funkci nikdo moc
> nepouziva tak je default zapnuta. Tohle mi na knihovnu pro zpracovani
> logu prijde jako naprosto uchylna vec.

Mno, zase tak striktní bych v tom hodnocení nebyl.
Celkem to chápu a dovedu si docela živě představit, jak k tomu došlo.
Někomu se zdálo jako chytrý nápad, že při logování proběhne přepis IP na 
jméno. To zní jako dobrý a jednoduchý plán. Takže je celkem jasné, že 
mám potřebu si stahovat hostname. To je taky jasné. Pochopitelně je 
bezva, když to mohu dělat kdekoli v textu. Takže šup, nějaký hezký 
parser. Jenže ten parser si zjednodušil život voláním enum. To ale není 
nic škodlivého, to dělá kde kdo.
Mno a pak došlo k tomu, že se očekávání autora parseru rozešlo s 
očekáváním autora té části s překladem a on mu toho poslal víc (nebo 
míň) e ten parser udělal enum nad větší množinou dat, než se čekalo.
Takže se nakonec udělá enum nad něčím, co neposlal autor kódu, ale co 
přišlo jako odpověď "z venku".
Problém je, že java je interpretovaná a je to jazyk dost vysoké úrovně, 
takže pokud se někomu povede něco pořádně zašmodrchat, tak se dá 
dosáhnout celkem hezkých efektů. Pak je tu tradiční problém s web 
serverem na portu 80. To je privilegovaný port, takže je potřeba, aby ho 
spustil někdo, s dost velkými právy. Pokud se mi podaří se k těmto 
právům vrátit, je vymalováno.


Takže tak.


Další informace o konferenci Hw-list