* decompiler: V Java bytecode jde hlavně o převod z postfixu do infixu a detekci while, if, for, (...) ze skoků. PHP bytecode vypadal podobně. Momentálně pro jeho tvorbu nemám dostatečnou motivaci, ale neměl by to být problém. Skoky jsou z toho nejtěžší, převod do infixu je vyloženě triviální. (Dobře, v Javě to trošku zesložiťují instrukce jako DUP [link] , ale i s tím se dá si celkem dobře poradit.) Navíc napsat testy je vyloženě triviální - vezmu tunu PHP kódu (open-source projekty...), kompilace, dekompilace, kompilace, porovnání původní a nové zkompilované formy.
* ankety/fóra: Je to otázka bezpečnostní politiky, ale pokud vynechám akci přes GET ověřenou přes referer a ověřím adresu obrázku (kvůli "javascript:" apod., ale whitelistem), pak v tom nevidím jakýkoli bezpečnostní problém. Samozřejmě, Tvůj přístup je také správný, hlavně je důležité tyto dva přístupy nekombinovat. Proti akcím přes GET ale hovoří i jiné faktory (např. filozofie HTTP a vyhledávače).
* k include: dobře, lomítka jsou, je-li zakázána tečka a je-li na začátek něco rozumného (např. "./") přidáno, přijatelná. Ale whitelist by měl jít rozumně aplikovat i na Soomu - jen by to nebyl whitelist různých řetězců, ale znaků, ze kterých se může takový řetězec skládat.
* messaging system: K tomu mě momentálně nenapadla vhodná klíčová slova (kromě Emkei, které je ale příliš obecné). Použití slov messaging system nebylo úspěšné. Teď to hledat nebudu. |