数据库不断受到恶意PHP攻击

时间:2014-02-02 00:27:52

标签: php sql database

我终于设法让一个非常成功的企业运行,但我一直受到攻击。攻击者获得了对站点部分的shell访问权限,并设法创建/编辑我的PHP文件以将更新查询发送到我的数据库。

我从sitelock获得了安全网站的帮助,我甚至付了额外费用来仔细检查代码并确保没有漏洞。攻击者再次成功,并把整个业务都搞砸了。

现在我需要的是:用户需要能够查看数据库,我还有一个cron作业,每20分钟更新一次用户“余额”。有时我需要管理网站,这意味着向数据库添加新信息。

然后我有一个好主意(我想),但是sitelock认为它不聪​​明: 主数据库将仅设置为VIEWING。主站点上任何地方都没有可用的密码,可以发送UPDATE或INSERT查询。 同时,我会在另一台服务器上有一个秘密网站,我可以从中进行更新。我将运行我的PHP脚本(使用我的cron作业)以使用更加特权的数据库用户远程访问MAIN数据库。

Sitelock声称远程访问数据库可能会带来更多风险,但我不知道它会如何。假设我的秘密网站也没有被黑客入侵,我不明白为什么这会如此危险。有人可以解释为什么会这样吗?

1 个答案:

答案 0 :(得分:2)

由于缺乏重要信息,很难提供答案。不过,我会试一试。

  

攻击是正常的。

请注意,大多数网站始终是非攻击。由于您无法禁用攻击,因此需要保护系统广告WebApp。这很重要

  • 保持操作系统及其配置的最新状态
  • 编写代码,不暴露可攻击点
  • 可能安装保护系统组件。

但让我解释一下,你可能想做什么:

  

首先,停用您的网站并收集与证据相关的数据

从根本上禁用您的网站:

  • 切断互联网连接。
  • 至少禁用每个和任何脚本[不太好]。

不要只是禁用index.php脚本!入侵者确实知道WebApp的其他易受攻击点!使用.htaccess禁用每个文件夹中的每个脚本!

然后,将服务器的状态备份到本地计算机。重要的技术工件在这些类文件中:

  • 您的PHP脚本。
  • 数据库服务器的数据库/表。
  • 服务器的日志文件。
  • 服务器的配置文件[特别是/etc]

如果有足够的带宽,将整个服务器备份到本地计算机上!

当然,只能通过ssh运行备份!

  

接下来,弄清楚入侵者如何设法访问   你的网站。入侵者可能已获得操作系统级别的访问权限 [例如telnet]或 Web应用程序级别

您的入侵者不仅可能更改了您的网络应用程序,还更改了服务器软件或系统配置的其他部分。

当您专注于前端时,实际问题可能出在其他位置。

  

检查系统中 root kit

RootKit Hunter之类的root kit扫描程序可能会有所帮助。文章“How to scan Linux for rootkits with rkhunter”可能会提供一些帮助。

请注意,如果您设置了一个新系统,无论如何永久安装根工具包搜索工具都会很有用。

  

一般的经验法则:默默无闻的安全毫无价值。

如果你使用一个秘密网站来执行某项任务,入侵者也可以识别遥控器 - 并且可能会侵入该网站 - 以防远程站点或它访问主站点的部分也可能具有以前的漏洞。< / p>

  

增强网站的安全级别

  • 禁用每项服务,这不是永久性的。
  • 添加并启用Apache的mod_security模块,以自动拒绝某些可能存在危险的请求
  • 如果您在5.3.0版之前运行PHP,请启用PHP safe_mode。此PHP选项禁用某些危险功能。
  • 按照OWASP's PHP security Cheat Sheet
  • 中所述的指南进行操作
  • 使用ssh访问操作系统的shell 。没有其他办法是安全的!
  • 使用man in the middle attacks保护您的网站免受 https
  使用https

保护用户会话

如果您的网站使用http [not https],攻击者可能会获取该网站合法用户的会话ID。如果攻击者拥有该ID,则攻击者拥有合法用户拥有的所有权利。

不要忘记,如果合法用户使用

,抓取会话ID很简单
  • 一个不安全的[公共] WiFi网络
  • 非交换式以太网
  • 受感染的PC

病毒/木马渗透系统可能会抓取合法用户交换的每个和任何信息。因此,大多数技术措施可能会失败。

  

不要相信,自动安全检查会发现每个安全问题。

虽然SiteLock可能会发现某些类别的Web应用程序问题,但某些其他问题远远超出了任何自动安全检查的范围。 自动安全检查本质上是不完整的。

  

您需要每个技术领域的专家

要保护您的网站,您需要操作系统/管理专家 PHP专家