Valery's Mlog

Mindlog of a Freak
July 7th, 2006 by Valery Dachev

Проблематизация

Определено не и от леките ми дни. Започна с уплахата, че съм загубил страшно важен за мен човек. Слава Богу, фалшива тревога. Но достатъчно реална, че да ми разклати възприятията и настроението… Не знам как ще преживея още един такъв случай просто…

Малко след събуждането си установих, че за не знам кой път тази седмица при редовното рестартиране на web сървъра на Мантра всички сайтове изчезват. Вместо добрия стар Apache, се появява някакъв глупав perl процес наречен ShellBot (написан от някой си от Atrix Team). Тъпо, че вече две седмици оставям някакво script kiddie да си играе с машинката ми и съм си за бой… Всъщност това му беше първият успешен опит от доста време насам. Мързеше ме да търся мястото, от където пробива, а и разчитах на малко security мерки, които бях взел. В общи линии, нямаше как да стигне извън сайта, който е компрометирал. Тази сутрин обаче вече ми писна на шапката и с Илиян се хванахме да видим какво става. Човечето пуска дотолкова страндартни неща, че едно търсене в Google установи проблема – изпълняваше команди през PHP благодарение на бъг в по-стари версии на phpBB (няма да слагам връзка към него, за да не се излъже някой заблуден да си дръпне това творение). От една страна са си виновни уеб-майсторите, задето инсталират и забравят, а от друга съм аз, задето не съм спрял изпълняването на команди през PHP. “disable_functions = exec,passthru,system,proc_open,shell_exec” в php.ini свърши чудесна работа. Забраняването на shell_exec() функцията автомагично спира и backtick оператора. За капак сложих и едно “safe_mode_exec_dir = /tmp“, тъй като по подразбиране при мен всички сайтове работят в safe mode, а по едно “open_basedir” ограничение ги спира да пишат извън директориите си (в частност и по “/tmp”).

Денят продължи. И то как – една от машините на econ.bg групата сдаде багажа. Всъщност още не знам дали е SCSI контролера или диска и, но все едно дискът спира в произволни моменти. Язък за хубавия надпис “Hewlett-Packard NetServer E800”. Още по-тъпото е, че, при рестартиране, fsck тръгваше с грешно подадени опции, а скриптовете си мислеха, че вади грешка. Както и да е, наложи се аварийно да търча до сървърното на Spectrum Net в Изток. Мъчих, правих, струвах.. успях да изкопирам данните на една от другите машини и реших, че тази (и без това плачеща за преинсталиране с вехтия Red Hat 7.2 Enigma на нея) забрах към къщи. Ще видим дали Debian-чето ще я огрее. До неделя смятам да е up-and-running, ако наистина няма сериозен хардуерен проблем.

Прибирам се в офиса и се опитвам да довърша подкарването на Oracle Database 10g Express Edition от тяхното Debian repository… обаче на AMD64 архитектура. И PHP поддръжка за всичко това. Мъка-мъка…

… и така до сега.

P.S. Забравих да спомена.. тъй като съм на Debian Testing, последните обновявания на Proftpd (модулите за mysql, pgsql, ldap и т.н. вече са в пакета proftpd, а не в отделни пакети) и Courier (сменен е моделът за аутентикация) допълнително ми загубиха времето…

Leave a Reply

%d bloggers like this: