专栏首页洛米唯熊Web服务器在外网能裸奔多久?

Web服务器在外网能裸奔多久?

很多时候我们轻易地把Web服务器暴露在公网上,查看一下访问日志,可以看到会收到大量的攻击请求,这个是网站开通后几个小时收到的请求:

1、探测服务器信息

在上线一分钟,收到OPTION请求探测。

现在他已经知道我用的是Apache, 操作系统是CentOS,可以开展针对性的进攻了。

Tips:您问怎么把Apache信息藏起来?有书啊

2、命令执行攻击

上线半小时,收到大量利用WEB服务器命令执行漏洞的攻击。

如果您的服务器使用的是ASP或者Structs2并且开启了调试模式(大部分服务上线都先开着), 恭喜您,您在网络中安全生存的时间是半小时,服务器已被接管。

3、配置漏洞-爬代码

很多项目使用svn管理代码,用ant或者mvn打包(好像基本上都是),如果没有正确配置打包脚本,.svn目录会打进war包,里面包含了您的所有源码。

有人会说,我不是设置了 robots.txt告诉他不要爬我的代码吗?

唉,这是一份绅士协议,百度、Google这类搜索引擎一看里面内容说不要爬我的内容,就礼貌地走了。

其他的则可能会理解为:有料

必须关闭默认的列目录权限,否则您的所有代码在网站开启4小时之内,已经被复制了。

4、针对性漏洞攻击

来了,敌人已经知道您使用的是Apache, 直接利用apache漏洞进攻。

如果您使用的是Apache默认安装,并且没有打安全补丁,生命到此结束,估计80%的人都已经倒下了,已经活了8个小时,够了。

5、攻击配置漏洞

通常我们在安装的时候会有安装程序、数据库工具等,例如使用MySQL的很多人会安装phpMyAdmin, 但是安装完之后几乎没有人去删除setup.php文件。

有些比较有安全意识的开发者在使用完关键信息后,会把文件删除,例如数据库安装脚本。但是会忘记当时有修改,自动产生了一个.bak文件。

很多时候你还没有向领导汇报系统安装完成,敌人已经用您数据库中的初始密码使用系统了。

还有,领导要求加强安全意识,必须要强密码,但是密码太多好难记啊,找个文件存起来不要忘记。

真实发生过的事情

还有一个场景,使用JAVA的 - 系统刚上线,要监控啊,开启Jconsole,甚至开启Web控制台是必须的(很多时候用Tomcat的,默认的Console都在),于是:

您方便,大家都方便啊。

6、不安全的文件存储

管理员为了系统安全经常备份系统,很多系统做的很人性化,可以在线备份。但是很遗憾,文件存储在可访问目录:

如果有实施人员安装好网站,没有删除安装文件,就更方便了。

另外一个场景,日志对查找问题很重要,但是服务器很多时候不是能够直接访问的,去拿日志多麻烦啊,开个远程访问多方便;于是坏人也方便。

7、配置漏洞-不安全的权限设置

这是利用apach漏洞篡改文件的架势啊,我的首页目录是可写的,已经被人加料了。

8、操作系统漏洞 - 文件执行漏洞

有安全意识的开发人员把文件放到Web目录之外,安全多了。但是总得访问啊,于是得在代码里面把文件读进来,于是需要去查找一下文件:

密码已经给出去了。

9、配置漏洞-不要用管理员启动服务

建个专门用来启动Web服务的用户很麻烦?但是是必须的。

您可能觉得这个不是小儿科,我发现两个点就清理掉:

10、脚本注入

脚本注入你防了, 但有没有防%3Cscript ? 进一步有没有防ScRipt? 或者:%3cs%43ript%3e

为什么要白名单不要黑名单 - 防不胜防啊!

11、SQL注入

看看您的数据库有几张表。

12、留后门的下场

为了方便管理,需要留个后门统计信息,并且适当的时候可以远程管理,别人又不知道的。

若想人不知、除非己莫为。

13、溢出攻击和三方管道

溢出攻击大意就是制造出越界,在越界时可以导致堆栈之外的值被篡改。这部分研究还不太了解。不过这个更像是试探,下面这个更像溢出:

后面全部是././, 至少好几K,估计是一直尝试到HTTP可接受最大报文。

三方管道很重要,因为大部分情况我们会防别人攻击,但是很少会防内部传输出去。敌人攻进来之后不是要住下不走了的,而是要把您的有价值的内容偷出去,那么进来是一回事,送出去又是一件事情了。很多服务器开启了Web访问权限,无异于为敌人的运输打开大门。

举个实例,您的系统有SQL注入,但不是UNION注入而是SQL盲注,那么坏人通过SQL注入能够窃取到您的数据库(拖库),这个文件如何送回来呢?

当然如果您的用户有很高的权限,把这个文件写到外网可访问目录即可。但是如果不能呢?于是需要建立一个三方管道,本节第一张图的第二行就是在对方服务器上登记了一下我的信息,如果登记成功,下次可以用这个HTTP通道传输数据了,甚至可以用80端口与对方的木马控制程序连接,后面的事情就和您远程桌面一样地方便。

所以,记得禁止服务器向外连接哦!限制Web服务器仅可以访问后台特定系统如数据库,是非常必要的。

14、SQL盲注

您问什么是SQL盲注?盲注就是闭着眼睛注入呗。例如您的Order By 子句有SQL拼接,这个地方没办法用Union把数据取出来,那我怎么判断注入成功与否呢?

这段指令如果接到Order后面,生成一个SQL语句:select .. from .. Order By if(now()==sysdate(),sleep(9),0)

now 肯定等于sysdate啊,敌人真傻哦!

您说对了,now 等于sysdate, 如果注入成功,请求应该9秒之后才返回,否则立即回来了。

再如insert和update注入,他们不会返回数据的值的,但是:

如果注入成功,应该延迟3秒,下次可以在这里发挥了,比如写个: shutdown; 或者:drop table tb_users

小结

现在有太多的自动工具,小黑不用懂神马专业技术,就可以轻松渗透进您的网站。网上有人说80%的机器都是肉鸡,按照本服务器开机就受到的攻击来看,毫不夸张啊!您如果没有系统性地制定安全防范,一旦接入外网,能够活过8个小时已经很不容易了。

本文分享自微信公众号 - 洛米唯熊(luomiweixiong)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-05-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SQL Server Reporting Services(CVE-2020-0618)中的RCE

    SQL Server Reporting Services(SSRS)提供了一组本地工具和服务,用于创建,部署和管理移动报告和分页报告.

    洛米唯熊
  • 如果此方案通过,建议网安人员改行!

    “近日,为贯彻落实《网络安全法》,加强网络安全漏洞管理,工信部起草了《网络安全漏洞管理规定(征求意见稿)》,正式向社会公开征求意见,引起了整个网络安全圈的轰动。...

    洛米唯熊
  • 御剑扫描套装

    一个基于VB.NET + IOCP模型开发的高效端口扫描工具,支持IP区间合并,端口区间合并,端口指纹深度探测 提供工具+类库

    洛米唯熊
  • 近期关于代码审计的学习总结

    这一小段时间对一些 CMS 进行代码审计,和一些 CVE 分析复现。总结一下几个案例的问题产生原因和利用思路。由于能力有限,挖掘到的都并非高危漏洞,旨在总结一下...

    信安之路
  • 在线cms识别|旁站|c段|信息泄露|工控|系统|物联网安全|cms漏洞扫描|端口扫描|待完善..

    微语:这是一个朋友弄的东西,征求对方同意的情况下排版了下,发了出来,有些许BUG,大牛可以的话,来完善完善。 这是一款线上工具箱,收集整理了一些渗透测试过程...

    ittongluren
  • Photoshop 竟然还有这么多的开源替代品?!

    Adobe Photoshop 是一个高级的图像编辑和设计工具,适用于 Windows 和 macOS。相信你一定知道它,甚至日常工作中也需要用到它,你如果想在...

    GitHubDaily
  • 博通WiFi芯片漏洞致数十亿设备受影响,部分iPhone可遭网络窃听

    据外媒报道,赛普拉斯半导体(Cypress Semiconductor)和博通制造的WiFi芯片存在漏洞,正在使数十亿台设备容易受到攻击,包括苹果、谷歌和三星的...

    镁客网
  • 预警 | Windows再爆SMB服务0day漏洞 安恒信息提供一键修复工具

    在刚刚结束的2017年度DEFCON大会上,安全研究人员曝光了一个潜伏在Windows系统上长达20年之久的安全漏洞。该漏洞被命名为SMBLoris,攻击者使用...

    安恒信息
  • mysql查询缓慢原因和解决方案

    作者:weberhuangxingbo11 原文:https://blog.csdn.net/weberhuangxingbo/article/details/...

    好好学java
  • SQL Server优化50法

    查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效...

    小莹莹

扫码关注云+社区

领取腾讯云代金券