Говорят осенью у маньяков обостряется депрессия..
..Может повыть на Луну? (=
Все, кто пользуются панелькой от Гугла или браузером Google Chrome вероятно встречали предупреждения при посещении фишингового сайта или сайта, где размещен вредоносный код (трояны). Но не всегда и не везде Гугл успевает все проверять.
Сегодня зашел на свой сайт и заметил интересную рекламку в блоке Google Adsense:
The Ultimate in Compression! Get It Free Zip & Unzip Software
Нет, на сайте вирусов нет (т.е. они с сайта не загружаются и на сайт можно спокойно и безопасно зайти, там красиво). Там есть программа (инсталлятор), которая по-идее должна была бы быть новой версией известного архиватора 7-Zip. Чем она является на самом деле я не знаю, но пятая точка подсказывает, что там что-то нехорошее, а Virustotal это подтверждает.
Гео таргетинг
Второй прикол – вам наверняка не удастся скачать вирус программу, если вы зайдете с украинского IP. Вам будет предолжено отправить смску и получить код. Всего за каких-то символических 7.5$.
Мораль сей басни
Не забывайте нацюцюрнык проверять скачанные программы антивирусом 🙂
Символьная нотация chmod
| Чьи права изменять | Каким образом | Какие именно права |
| u (владельца) | + (добавить) – (убрать) | r |
| = (сделать такими же) | u (как у владельца) g (как у группы) o (как у всех остальных) | |
| u g | + – | s (SUID или SGID) |
| u | + | t (Sticky bit) |
Примеры:
Добавить группе право на запись: ~> chmod g+w file Убрать у прочих права на запись и исполнение: ~> chmod o-wx file Добавить владельцу и группе права на чтение и запись: ~> chmod ug+rw file Установить права прочих такими же, как у группы ~> chmod o=g file Установить права прочих и группы такими же, как у владельца ~> chmod og=u file Несколько изменений можно перечислять через запятую: Добавить вдалеьцу право на исполнение, а у группы и прочих убрать право на запись: ~> chmod u+x,go-w file Рекурсивно убрать у группы и у прочих права на чтение/запись/исполнение для каталога и файлов внутри: ~> chmod -R go-rwx directory
Конечно chmod -R не лучший вариант смены прав, т.к. изменяет права и каталогу и файлам, удобнее использовать find, например:
~> find . -type d -exec chmod 755 {} \;
~> find . -type f -exec chmod 644 {} \;
При резервирном копировании, переносе данных и ротации логов, очень полезным было и остается архивирование. Стандартными для UNIX-систем де-факто были и остаются архиваторы tar, gzip и bzip (bzip2).
Краткий справочник, как ими управлять:
tar cf file.tar files – создать tar-архив с именем file.tar содержащий files
tar xf file.tar – распаковать file.tar
tar zcf file.tar.gz files – создать архив tar с сжатием Gzip
tar zxf file.tar.gz – распаковать tar с Gzip
tar jcf file.tar.bz2 – создать архив tar с сжатием Bzip2
tar jxf file.tar.bz2 – распаковать tar с Bzip2
gzip file – сжать file и переименовать в file.gz
gzip -k file – сжать file в file.gz и оставить file
gzip -d file.gz – разжать file.gz в file
gunzip file.gz – разжать file.gz в file
gzip -c file.gz - разжать файл и вывести в stdout
gzcat file.gz - разжать файл и вывести в stdout
на самом деле gunzip и gzcat - хардлинки на gzip,
~> ls -laio /usr/bin/gzcat /usr/bin/gunzip /usr/bin/gzip
47132 -r-xr-xr-x 4 root wheel - 28400 Mar 6 2008 /usr/bin/gunzip
47132 -r-xr-xr-x 4 root wheel - 28400 Mar 6 2008 /usr/bin/gzcat
47132 -r-xr-xr-x 4 root wheel - 28400 Mar 6 2008 /usr/bin/gzip
просто так проще, чтобы не запоминать ключи :)
с bzip2 все аналогично gzip:
bzip2 file – сжать file и переименовать в file.bz2
bzip2 -k file – сжать file в file.gz2 и оставить file
bunzip2 file.bz2 – разжать file.bz2 в file
bzcat file.bz2 - разжать файл и вывести в stdout
bzcat/gzcat очень полезно применять, когда нужно прочитать уже сротированный лог, например:
ПродовженняВ блоге itblog.suпопалась заметка об оповещении по почте о входе в консоль.
echo ‘ALERT – Root Shell Access on:’ `date` `who` | mail -s “Alert: Root Access from `who | awk ‘{print $6}’`” user@dom.dom
Вспомнил, что у меня давно используется такая штука. Ну, мало ли, вдруг найдется мегахацкер, который взломает сервер =). Только у меня немного не так:
echo “ALERT – Root Shell Access on: `date; echo; who | bwtail -1`” | mail -s “Root From: `who | bwtail -1`” root@domain.com
who может вывалить пакаван данных о логинах, но они мне не нужны, т.к. замысел в оповещении о последнем логине, поэтому я отрезаю одну строку с помощью tail.
Что такое bwtail? =) Это черно-белая версия tail (по сути просто хардлинк на tail), который у меня сделан цветным:
# from .cshrc
alias tail /root/bin/coloredtail.sh
Вот так:
~> cat /root/bin/coloredtail.sh
#!/bin/sh/usr/bin/tail $@ | /usr/local/bin/colorize
По мотивам предыдущей заметки =)
Итак, если ваш сайт взломан или подобран пароль к вашему фтп-аккаунту и в некоторых (или во всех) файлах присутствует вражеский код iframe – самое время заняться чисткой.
Обнаружение противника
Для начала вражеский код нужно обнаружить. Самый безопасный и правильный подход – найти подозрительные участки кода в зараженных файлах и детерминировать их как вредоносные.
find . -name "*.php*" -or -name "*.*htm*" -exec grep "iframe" {} \; -print | less
В результате вы увидите код ифреймов и пути к зараженным файлам:
<iframe src=”site.ru” width=”0″></iframe>
/root/temp/3/1.htm
<iframe src=”site.ru” width=”0″></iframe>
/root/temp/3/1.shtml
<iframe src=”site.ru” width=”0″></iframe>
/root/temp/3/1.html
Если не хотите видеть путь к файлам (в принципе, на данном этапе он и не нужен), уберите ключ -print.
По всей видимости, в компанию СпутникМедиа пришел кризис – bigmir.net накручивает показы с помощью iframe. Эта тема сейчас активно обсуждается в листе рассылки Webman. Есть также версия, что это просто подстава, только кому она выгодна? А тем временем, на страницах сайтов можно найти коде ифрейма:
<iframe src=”hxxp://metanscript.com/s/in.cgi?4″ width=”0″ height=”0″ scrolling=”no” frameborder=”0″></iframe>
17:25 [220] ~ ~> wget –spider “hxxp://metanscript.com/s/in.cgi?4”
[/text]
Spider mode enabled. Check if remote file exists.
–2009-08-19 17:25:45– hxxp://metanscript.com/s/in.cgi?4
Resolving metanscript.com… 213.163.89.35
Connecting to metanscript.com|213.163.89.35|:80… connected.
HTTP request sent, awaiting response… 302 Found
Location: hxxp://www.bigmir.net/ [following]
Spider mode enabled. Check if remote file exists.
–2009-08-19 17:25:45– hxxp://www.bigmir.net/
Resolving www.bigmir.net… 193.239.68.40
Connecting to www.bigmir.net|193.239.68.40|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: unspecified
Remote file exists and could contain further links,
but recursion is disabled — not retrieving.