[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