帮帮伙计们。我被黑了,厚颜无耻地跟我扯上关系,要钱。我是这个行业的新手,我认为在我学习的同时,办公室宁愿让我下班。
最近网站开始卡顿了,貌似是DDOS攻击。用IP封禁他,但无济于事。我厌倦了追逐 IP 并禁止它们,原则上这不是一个选项。就在我和黑客通信的时候,他打了几个洞,说他连我的数据库都可以攻破。当我在过载期间检查数据库时,它没有负载,主要是在服务器上。每次我更改所有可能的密码,但黑客很容易绕过它们。
因此,四处翻找,寻找弱点,我发现我的服务器不仅为index.php
,而且还为发布页面abc.php, xyz.php
。我不知道,该死的,但我用鼻子感觉到这个混蛋隐藏了一些文件并正在访问它。刹车的地方,100% 填充通道。原则上,可以从此文件 ( DELTE FROM tbl_name
) 中删除基数。
怎样才能找到这个文件,或者怎样才能理解对服务器的一些异常输入?我有 Symfony 1.4 PHP 框架。5年前的网站。重写它?(不是一个选项,至少现在不是)。我在额外的文件存储层中遗漏了什么?还是我挖错了方向?
听朋友说,这里面90%都是竞争对手。将其黑掉后,DDoS 通常会停止。但是因为你的弱点而伤害某人的想法并没有激发什么。
他要求黑客给他时间据称与他的老板讨论分叉的问题。
以下是第一步:
如果您已经被黑客入侵:
我们确保我们至少有两组具有不同权限的用户。假设
web
和root
,其中web
此权限适用于所有残障用户(禁止下载除 之外的文件image type
)。如何授予权限?阅读如何提高服务器的安全性和可用性,为后续步骤打下坚实的基础。.如果 GIT没有显示不寻常的变化,那么可能值得查看它之外的目录。通常,这些目录是我们允许用户上传的图像或其他文件上传的目录。
find . -type f -name '*.php' | xargs grep -l "eval *(str_rot13 *(base64_decode *(" --color
该命令将查找包含的 php 文件eval(str_rot13(base64_decode(
(您也可以在数据库中搜索SELCT col_nam FROM tbl_name WHERE col_name LIKE '%eval(str_rot13(base64_decode(%'
)。grep 语法非常简单,您可以更改它以满足您的需要。PHP级别:
(
disable_functions = "show_source, system, shell_exec, exec, eval
" )。您可以关闭该函数。并通过套接字连接mail()
修复对端口 25 的调用。SMTP
在这里我将重点介绍功能
eval
。如果 PHP 代码以某种方式隐藏在您的代码中,那么它的执行eval
将不会发生。可以根据需要补充或减去此列表。每个人都禁用了编写的任何 PHP 脚本,我希望不是我们。跨站请求伪造( CSRF):
POST, PUT, DELETE, STORE
查询。跨站点脚本(XSS)。在输入页面时显示您未保存在页面上的文本。这里有一些细微差别。
HTML
从字符串中删除 PHP- 标签)。stackoverflow textarea
。我们在发布问题或者答案的时候,是不能输入任何标签的,我只是忘记了这些文字标记叫什么: )png
. 投射时,图片元数据会丢失,安全性得到切实保障,上传中是否存在带有类型扩展名的文件,在建站.php
之初就应该检查是否存在,如果存在,则应立即丢弃。在 .htaccess 级别
限制站点上的入口点。
index.php
. 或您知道的其他文件 (admin.php,back.php, ...
)。您始终可以跟踪对另一个文件的访问,并且始终可以在单独的日志中记录有关对可疑文件的访问的信息。检查
.htaccess
文件是否有可疑更改。auto_append_file
并auto_prepend_file
在所有 PHP 脚本的开头或结尾包含其他 PHP 文件,攻击者可以使用它们来包含他们的代码。find . -type f -name '\.htaccess' | xargs grep -i auto_prepend_file;
以下命令在所有子目录中搜索
.htacсess
包含“http
”的文件。搜索的结果将是所有重定向规则的列表,其中可能包含恶意规则find . -type f -name '\.htaccess' | xargs grep -i http;
。.htaccess
将具有以下内容的文件添加到所有可写目录:php_flag engine 0
RemoveHandler .phtml .php .php2 .php3 .php4 .php5 .php7 .phps .cgi .pl .asp .aspx .shtml .shtm .fcgi .fpl .htm .html
AddType text/plain .phtml .php .php2 .php3 .php4 .php5 .php6 .php7 .phps .cgi .pl .asp .aspx .shtml .shtm .fcgi .fpl .htm .html
通过这样做,我们在此目录中禁用 PHP,并强制所有脚本显示为 HTML。这可以以防万一。肯定不会多余。
或禁止执行:
在数据库级别,特别是 MySQL:
始终使用准备好的查询和存储过程:
大多数数据库都支持准备好的查询的概念。这是什么?这可以描述为某种已编译的 SQL 查询模板,它将由应用程序运行并配置输入参数。准备好的查询有两个主要优点:
保护自己免受 SQL 注入
在 Linux 系统级别...
如何为黑客设置陷阱(Honeypot - 一罐蜂蜜):
如果您没有足够的知识和技能,请不要这样做,黑客可以在您自己的陷阱中击败您。
Honeypot(蜜罐)早已广泛应用于计算机安全领域,它是一种资源,其任务是投降给目标为接受测试、攻击和被黑的黑客。
它可以是另一个系统或应用程序的模拟器,某种“埋伏的地牢”,或者只是一个标准系统。不管你怎么造你的锅,它的主要任务就是被攻击并详细告诉你。
自然,不可能在这篇文章中列出所有内容。但是如果您尝试实施本文中列出的所有内容,您可以学习如何保护自己而不是生病。对于每个要点,您总是可以提出问题或寻找更多信息以获得更详细和正确的实施。
有用的材料:
用于检查网站病毒的 Web 服务https://habrahabr.ru/post/303956/
对抗 DDoS 攻击的方法https://habrahabr.ru/post/129181/
对抗 DDOS 攻击的 5 个技巧http://www.securitylab.ru/analytics/442099.php
不惜一切代价抵制:应对DoS/DDoS攻击的方法https://xakep.ru/2009/10/14/49752/
5 个用于分析您网站安全性的程序https://seo-zona.ru/5-programm-dlya-analiza-bezopasnosti-vashego-sajta-2015-03-31.html
如何了解您的网站已被黑客入侵https://www.siteguarding.com/ru/kak-poniat-chto-your-sait-byl-vzloman
免费的在线病毒扫描程序:
用知识武装自己。保持警惕。.
祝你好运 :)
至少做到
grep
'omeval
对于 KO 级别的建议,提前表示抱歉。然而...
注意项目的细节。如果您的客户来自俄罗斯,请切断所有外国 ip。攻击者很可能正在通过外部代理访问您。
我建议将攻击者感兴趣的主窗体放在主窗体上,但对客户端不感兴趣。例如,经销商/批发商/合作伙伴的入口。最有可能的是,攻击者会尝试通过暴露他的 ip 来攻击新的形式。
评估内部威胁的可能性。难不成这就是组织的员工之一?
试试公共安全扫描仪,比如https://observatory.mozilla.org/ 当然,这些服务是相当偏执的,并不是所有的东西都需要在生产项目上实现。但也许你可以填补一些漏洞。
我认为最好通知管理层。也许这将有助于为付费安全审计找到资金。