产品规格:
产品数量:
包装说明:
关 键 词:柳州网站漏洞检测项目
行 业:IT 服务器 服务器
发布时间:2020-11-25
许多客户在网站,以及APP上线的同时,都会提前的对网站进行全面的渗透测试以及安全检测,提前检测出存在的网站漏洞,以免后期网站发展过程中出现重大的经济损失,前段时间有客户找到我们SINE安全公司做渗透测试服务,在此我们将把对客户的整个渗透测试过程以及安全测试,发现的漏洞都记录下来,分享给大家,也希望大家更深地去了解渗透测试。
在对客户的网站进行服务的同时,我们首先要了解分析数据包以及网站的各项功能,有助于我们在渗透测试中发现漏洞,修复漏洞,综合客户网站的架构,规模,以及数据库类型,使用的服务器系统,是windows还是linux,前期都要收集信息,做到知彼知己百战不殆。只有真正的了解了网站,才能一层一层地找出漏洞所在。网站使用的是php语言开发,采用是mysql数据库,客户服务器用的是linux centos系统,用phpstudy一键环境搭建,PHP的版本是5.5,mysql数据库版本是5.6.客户网站是一个平台,采用会员登录,功能基本都是一些交互性的,会员资料,添加,与,在线反馈等等。
讨论回顾完上次整改的问题之后,理清了思路。然后我登录了网站查看一下原因,因为网站只有一个上传图片的地方,我进行抓包尝试,使用了repeater重放包之后,发现返回包确实没有返回文档上传路径,然后我又尝试了各种绕过,结果都不行。后苦思冥想得不到结果,然后去问一下这个云平台给他们提供的这个告警是什么原因。看了云平台反馈的结果里面查杀到有图片码,这个问题不大,上传文档没有执行权限,而且没有返回文档路径,还对文档名做了随机更改,但是为啥会有这个jsp上传成功了,这让我百思不得其解。
当我仔细云平台提供的发现webshel数据的时候,我细心的观察到了文档名使用了base编码,这个我很疑惑,都做了随机函数了还做编码干嘛,上次测试的时候是没有做编码的。我突然想到了问题关键,然后使用burpsuite的decoder模块,将文档名“1jsp”做了base编码成“MS5Kc1A=”,然后发送成功反馈状态码200,再不是这个上传失败反馈500状态码报错了。
所以,这个问题所在是,在整改过程中研发人员对这个文档名使用了base编码,导致文档名在存储过程中会使用base解析,而我上传文档的时候将这个后缀名.jsp也做了这个base编码,在存储过程中.jsp也被成功解析,研发没有对解析之后进行白名单限制。其实这种编码的更改是不必要的,毕竟原来已经做了随机数更改了文档名了,再做编码有点画蛇添足了,这就是为啥程序bug改一个引发更多的bug原因。
假如你是hack,准备攻击一家企业,那么首先要做的件事就是识别尽可能多的API。我首先按常规方式使用目标应用程序,在浏览器中打开Web应用程序或者在手机端安装移动应用程序,然后使用代理监视通信。代理能够捕获浏览器或移动应用程序对后端Web服务器发出的所有请求,从而使攻击者可以对所有可用的API端点进行分类。例如,大多数API都将API/V1/login作为身份验证端点。
如果目标也是移动应用程序,则将应用程序包拆开,并查看应用程序内部可用的API调用。考虑到所有可能的活动,攻击者可以搜索无确保护用户数据的常见配置错误或API。后,攻击者寻找API文档。一些组织为第三方发布API文档,但为所有用户使用相同的API端点。有了一个不错的端点清单,攻击者就可以测试标准用户行为和异常行为测试,可以通过两种方法找到有趣的漏洞。
其实从开发的角度,如果要保证代码至少在逻辑方面没有明显的漏洞,还是有些繁琐的。举个简单的例子,如网站的数据检验功能,不允许前端提交不符合当前要求规范的数据(比如年龄文本框部分不能提交字母)。那么为了实现这个功能,首先开发者肯定要在前端实现该功能,直接在前端阻止用户提交不符规范的数据,否则用户体验会很差,且占用服务器端的资源。
但是没有安全意识或觉得麻烦的开发者就会仅仅在前端用Js进行校验,后端没有重复进行校验。这样就很容易给恶意用户机会:比如不通过前端页面,直接向后端接口发送数据:或者,前端代码编写不规范,用户可以直接在浏览器控制台中用自己写的Js代码覆盖原有的Js代码;或者,用户还可以直接在浏览器中禁用Js;等等。总之,前端的传过来的数据可信度基本上可以认为比较低,太容易被利用了。
而我的思路都是很简单的,就是关注比较重要的几个节点,看看有没有可乘之机。如登录、权限判定、数据加载等前后,对方是怎么做的,用了什么样的技术,有没有留下很明显的漏洞可以让我利用。像这两个网站,加载的Js文档都没有进行混淆,注释也都留着,还写得很详细。比较凑巧的是,这两个网站都用到了比较多的前端的技术,也都用到了sessionStorage。
SINE安全网站漏洞检测时必须要人工去审计漏洞和查找漏洞找出问题所在并修复漏洞,对各项功能都进行了全面的安全检测。