渗透测试项目总结_潮州项目渗透测试

hacker|
360

渗透测试前十培训机构?

IT培训机构排名前十是:1、达内培训达内PHP学院是中国高端IT培训的领先品牌,致力于培养面向电信和金融领域的JAVA、C++、测试、嵌入式、PHP等方面的中高端软件人才,由美国国际数据集团IDG、集富亚洲JAFCO ASIA和高盛集团投资,是国内首家获得国际风险投资的IT培训机构。2、北大青鸟北大青鸟以完善的标准化管理为依托实现了体系的规模化发展,200余家授权培训中心遍布全国60多个重要城市,全国合作院校超过600所,同10000余家知名企业建立了战略合作伙伴关系,累计培养和输送80余万IT职业化人才进入IT行业。3、港湾教育北京港湾兴业网络科技有限公司是港湾网络(香港)有限公司控股的高科技企业,是国内最早从事IT服务行业的企业之一。4、凌阳教育凌阳教育是全球最大消费性IC设计公司——凌阳科技旗下品牌,北京凌阳爱普科技有限公司的三大业务之一;自2001年到现在,通过凌阳科技大学计划,与全国1000多所高校建立合作关系,共建凌阳实验室480多所,累计培训中国高校老师4000余人,是中国高校嵌入式单片机培训的第一品牌。5、兰赛普学院兰赛普学院是兰赛普旗下的专业人才培养系统研发机构,秉承了兰赛普一贯的专业作风,联手企业项目大师,结合企业真实项目案例,独创了业内著名的“项目实训”体系的同时,也致力于研究及开发兰赛普项目实训系统。6、甲骨文培训甲骨文(ORACLE)全球IT职业教育项目在中国建立“甲骨文授权学习中心”,让所有想学习甲骨文原厂技术的人员都可以在授权学习中心进行学习。所有授权学习中心实行统一经营管理、严格保证教学质量,受到社会和业界的高度认可。7、安博亚威安博亚威科技是安博教育集团旗下专业从事思科教育的培训机构。2010年,安博教育集团被思科授予最高级别合作伙伴——思科培训解决方案合作伙伴(CLSP),并成为“CISCO360学习计划”在中国的第一合作伙伴和“思科就业培训计划(WTP)”在中国的唯一合作伙伴。8、清华万博成立于1999年6月,是清华大学控股的高科技企业,也是清华大学旗下唯一一家专门从事IT专业技术培训的公司,其清华万博品牌已经广为大众所熟知。9、OPEN LABOPEN-LAB是上海旗盈科技和上海交大培训部门合作的教学机构,1999年成立。北京训唐博科科技有限公司是OPENLAB在北京的运营公司,最专业的IT人力资源顾问公司之一。10、东方瑞通东方瑞通1998年创办于北大燕园,是国内最早的IT高级技术培训企业之一,2002年成为中国首批微软授权金牌服务中心,正式全面开展企业IT外包服务业务。以上内容参考:百度百科-达内PHP学院、百度百科-北大青鸟、百度百科-港湾教育、百度百科-凌阳教育、百度百科-兰赛普学院、百度百科-甲骨文、百度百科-安博亚威、百度百科-清华万博、百度百科-OPEN-LAB、百度百科-东方瑞通

渗透测试报告自动生成工具

公众号:白帽子左一

领取配套练手靶场、安全全套课程及工具...

在安服仔的日子里,发现其他人输出的渗透测试报告结果不规范,主要在报告质量、内容、字体、及修复方案中存在诸多问题,而且 大部分安服仔需要对每次的项目结果进行统计整理,方便后续跟踪复测。

因此研发了 Savior—渗透测试报告辅助生成系统 , 起这个名字也是为了拯救大多数渗透测试工程师,

告别繁琐的渗透测试报告编写过程及漏洞统计过程。

前端 : Ant Design Pro

后端 : Django REST Framework

数据库 : Mysql

用户管理 : 主要是方便统计漏洞的发现者,后续可能大概也许会添加漏洞统计模块,根据提交数据、漏洞类型、时间等进行统计报表,当前用户管理模块仅允许通过Django后台进行修改,前端只负责展示,主要是我太懒了。

项目管理 : 根据项目的不同可上传项目的专属渗透测报告模板,并可以根据需要进行模板自定义模板(/Demo/demo.docx);

模板自定义 : 不用修改源代码,仅需修改word即可进行模板自定义;

整改建议管理 : 此平台主要就是为了体现标准化输出,因此可通过内置漏洞描述及修复建议进行快速输出,并支持自定义修改(/Demo/常规WEB渗透测试漏洞描述及修复方法.docx);

一键生成: 通过提交报告模块,内联项目模板,快速生成渗透测试报告,真正达到了一键生成,并确保报告内数据准确、字体统一、格式标准;

自动邮件: 在生成报告后可通过用户管理配置的自动邮件发送功能进行邮件通知,可自定义邮件模板,这样再报告给客户的时候就可以直接转发了(暖男功能);

漏洞统计: 每次渗透过后,需要挨个查找报告进行统计整理,现在只要提交报告后,后台会自动联动;

漏洞报表一键导出

漏洞跟踪: 增加了漏洞状态字段,创建报告后,漏洞状态默认为新增,漏洞管理模块可进行复测,包括已整改、未整改两种状态;

Demo :

演示账号 :admin

演示密码 : Savior@404

首先将代码clone到本地:

Docker部署

我们推荐使用Docker进行部署,相对于源码部署更为简单和快速。

部署前请务必先安装 Docker 及 docker-compose 。

修改配置文件

首先复制根目录的 .env.docker 并重命名为 .env , 修改其中的Email Settings和initial Administrator配置。

这两个配置分别控制邮件提醒,以及初始管理帐号密码及邮箱。

同时需要注意以下两点:

1. 务必把邮箱修改为自己邮箱,不然可能会出现非预期错误!

2. 如果使用阿里云、腾讯云服务器,请使用smtp的ssl协议,两家云厂商默认封禁了25端口。

一键启动

访问 即可看到页面。

修改启动端口

如果想修改启动端口,可以修改docker-compose.yaml文件中web容器的ports。

默认为8000:8000,比如要修改为8080端口可改为8080:8000。

所需环境:

前端环境

环境变量设置 创建字符集为utf-8编码的数据库。

复制**.env.docker为.env**,并配置数据库、邮箱、管理员等信息。

后端环境

源码部署环境:

前台页面 :

Django管理后台:

其中Savior平台包含两个后台页面。考虑到安全性,目前用户管理、项目管理托管于Django管理后台(主要是这两个模块不会写),其余功能均可通过前台页面实现。

前台页面 :

Django管理后台 :

访问Django管理后台: ,

请完善API用户的Name、Avatar、Autosentmail三个字段,分别控制报告的作者、头像(图片Url)、生成报告后自动发送渗透测试报告到邮箱。

访问Django管理后台:

请通过APIProjects进行添加项目,可根据不通项目选择不通的渗透测试报告模板。

参数说明:Project logo(项目Logo)、Project center(项目名称)、Project description(项目描述)、Project template(渗透测试报告模板,目前标准模板可使用Demo/demo.docx,如需自定义模板,请参考模版自定义部分)

访问 可进入Savior平台,通过个人设置整改设置添加漏洞模板可进行设置漏洞类型、漏洞描述、修复建议从而达到标准化。

目前整理了一些通用的修复建议模板,请参考Demo/常规WEB渗透测试漏洞描述及修复方法.docx。

目前根据我经常使用的渗透测试报告模板生成了一个demo版本(请参考/Demo/demo.docx)。

当然您也可以根据自己的需求进行模板自定义,其中仅需在WORD模板中进行参数替换,目前Savior中具体参数如下:

以下漏洞详情请利用{%tr for vuls in vuls %}{%tr endfor %}进行循环遍历。

如想列出所有漏洞URL,则使用参数{%tr for vuls in vuls %}{{item.vul_url}}{%tr endfor %}

注: Savior平台渗透测试模板遵循Jinja2语法,更多内容请参考

如果我们完善了用户信息、项目管理、整改设置后,就可以通过前端页面进行创建报告,其大概流程如下:首先完善报告的基本信息。

选择漏洞管理的添加漏洞功能。选择漏洞类型后,漏洞名称、漏洞描述、修复建议会根据整改设置进行自动联动,并可根据需求进行自定义修改。

需要注意的是漏洞详情处如果需要插入XSS语句,请进行url编码后进行输入!

注: 未提交前请勿刷新页面,此时漏洞详情保存为前端。提交后会自动生成渗透测试报告并进行下载。

打开报告会提示更新域,更新请选择是,再选择更新整个目录,此问题主要是为了更新目录,不然渗透测试报告中目录无法自动更新。

如果在用户管理打开了Autosentmail功能,渗透测试报告会自动发送至我们邮箱,方便转给甲方爸爸。

访问Savior平台,选择漏洞列表可进行漏洞统计并进行漏洞复测。

其中漏洞包含三个状态(新发现、已修复、未修复)。

通过选择导出数据功能,可将漏洞列表导出为Excle。

用户管理、项目管理迁移至前端

大数据看板

感谢 echo503 提供的项目帮助

感谢 lp0int 提供的项目帮助

项目框架及 Docker 部署参考 Github-Monitor:( )

原文地址:

web渗透测试之攻破登录页面

当我们在做渗透测试时,无论厂商项目还是src众测项目,都会遇到给一堆登录系统的URL,然后让我们自己去测,能不能进去全看天的状况,本文将讲一下怎么突破这种封闭的web系统,从而进行更深层次的渗透 ,学完后你会发现,其实你就是系统管理员。

如果能直接绕过登录系统界面,后面的就比较好做了,目前常见的登录系统绕过方法有:

大部分情况下,系统登录页面都不存在xss,目录遍历,SQL注入等漏洞,这时候最常用的方法就是爆破和猜解登录口令,密码猜解最关键的就是字典要高效准确

https:// down.52pojie.cn/Tools/N etwork_Analyzer/Burp_Suite_Pro_v1.7.31_Loader_Keygen.zip

2.准确的用户名,密码字典是高效破解的重中之重 ,一般都是指定几个常见用户名 ,尝试 top500,top1000进行爆破 字典不必要太大,最重要的是针对性要强 ,下面是top1000:

链接: https:// pan.baidu.com/s/1-XztuB 8YTfpT5aUBVbmbzA 密码: 56pb

3.如果还是不能猜解成功,就要根据目标信息用字典生成器构造针对性的字典来猜解了,推 荐几个比较好的字典生成工具

pydictor:

LandGrey/pydictor

crunch:

crunch - wordlist generator

Cewl:

digininja/CeWL

Cupp:

Mebus/cupp

因为管理员权限较高,通常我都会先进行管理员口令的猜解,总结了一些常见的管理员用户名字典

u链接:/u u https:// pan.baidu.com/s/1sOD1-u whnStaw_LfMOf-sQ /uu密码: 3yqe/u

用此用户名字典,再加上弱口令top1000,同时爆破系统管理员用户名密码

链接: https:// pan.baidu.com/s/1-XztuB 8YTfpT5aUBVbmbzA 密码: 56pb

常见的普通用户用户名是姓名拼音,总结了普通用户字典

TOP3000姓名

u链接:/u u https:// pan.baidu.com/s/1qN9kCF tymP4ugvu3FFkKbA /uu密码: hkzp/u

TOP10w姓名

https:// github.com/rootphantome r/Blasting_dictionary/blob/master/top10W.txt

通常可以选择几个弱口令密码,比如:123456,123abc,111111,然后配合top10w来猜解登陆口令,一些初始化的默认密码也很简单,如果能找到配合top10w通常也能爆出登录口令

现在的业务系统口令传输到后端前都会进行加密处理 ,web常见的加密方式有 md5 加密、sha1 加密、RSA 加密,在此基础上总结了两种破解方式:

1.利用burpsuite的payload processing功能,把字典按照加密方式先加密再发包

2.用字典生成工具生成加密好的字典,然后burp直接加载加密字典

这里推荐的字典生成工具是pydictor,encode功能内置了多种加密算法,调用handler工具直接加密自己的明文字典

如果登录系统设置了IP地址白名单,我们可以通过下面的几个http头字段伪造IP地址,用burp抓包后将下面的某个http头字段加入数据包发送到服务器

pre class="1872-9d59-c9a7-f8b3 prettyprint hljs css" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto;"Client-Ip: 127.0.0.1

X-Client-IP: 127.0.0.1

X-Real-IP: 127.0.0.1

True-Client-IP: 127.0.0.1

X-Originating-IP: 127.0.0.1

X-Forwarded-For: 127.0.0.1

X-Remote-IP: 127.0.0.1

X-Remote-Addr: 127.0.0.1

X-Forwarded-Host: 127.0.0.1/pre

如果在系统登陆界面加上了验证码,那么上面的方法基本上就都失效了,那有什么方法可以绕过验证呢

1.图形验证码不刷新

在一段时间内只要不刷新页面,无论登录失败多少次都不刷新验证码,这个时候就可以使用同一个验证码根据上面的方式进行暴力破解

2.验证码失效

不管在验证码表单输入什么样的数据,都会判断通过,但这种情况很少见

3.图形验证码可被识别,抓包直接可以获得验证码

很多网站的验证码都可以在请求数据包中找到,或者隐藏在request的cookie中,response的源码中,可以利用burpsuite的macros来匹配response中的相应数据,具体的爆破方法参见下文:

burpsuite爆破密码(含验证码) - CSDN博客

4.图形验证码参数直接绕过

对于request数据: user=adminpass=1234vcode=brln,有两种绕过方法:

一是验证码空值绕过,改成 user=adminpass=1234vcode=;

一是直接删除验证码参数,改成 user=adminpass=1234。

5.万能验证码

渗透测试的过程中,有时候会出现这种情况,系统存在一个万能验证码,如0000、9999,只要输入万能验证码,就可以无视验证码进行暴力破解。

6. 验证码可被识别

有些图形验证码加入的像素线条过于简单,使用图形验证码识别工具可以识别出每次更换的验证码,在平常的漏洞挖掘过程中,如果我们发现登录的验证码非常简单且易于识别,那我们就可以尝试使用自动化工具来进行登录破解了,如 PKAV 的 HTTP Fuzzer

7.使用机器学习算法识别验证码

主要是对特定网站的图形验证码训练识别模型,达到一定的准确率就可以调用进行模拟提交图形验证码的值了。可参考以下三篇文章进行学习:

使用KNN算法识别验证码:

http:// nladuo.github.io/2016/0 9/22/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%A0%B4%E8%A7%A3%E6%8A%80%E6%9C%AF%E5%9B%9B%E9%83%A8%E6%9B%B2%E4%B9%8B%E4%BD%BF%E7%94%A8K%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/

卷积神经网络识别验证码

http:// nladuo.github.io/2016/0 9/23/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%A0%B4%E8%A7%A3%E6%8A%80%E6%9C%AF%E5%9B%9B%E9%83%A8%E6%9B%B2%E4%B9%8B%E4%BD%BF%E7%94%A8%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/

使用 TensorFlow 训练验证码

http:// nladuo.github.io/2017/0 4/10/%E4%BD%BF%E7%94%A8TensorFlow%E8%AE%AD%E7%BB%83Weibo-cn%E9%AA%8C%E8%AF%81%E7%A0%81/

对于网站要求输入手机号,接收手机短信并校验短信验证码是否正确进行登录的系统,突破的主要思路有:

1.短信验证码生命期限内可暴力枚举

在验证码还未过期的时间段内,可枚举全部的纯四位数字、六位数字等较简单的短信验证码;

2. 短信验证码在数据包中返回

和图形验证码一样,在response中可以直接获取到短信验证码。

3. 修改请求数据包参数或 Cookie 值绕过

比如有 post 数据包:mobile=12435437658userid=123456, Cookie中有:codetype=1

在特定步骤,修改 mobile=自己的手机号,自己手机就可以收到别人的验证码,后面再用别人的手机号和接收到的验证码登录;

修改 Cookie 中可疑的参数和值,进行绕过,比如上面修改 codetype=0;

4. 修改返回包绕过

提交错误的短信验证码,返回包中有: status=false,在Burpsuite中修改为 status=true,即可绕过前端判断,成功进入系统。具体还要结合实际的场景,灵活操作。

web系统登陆页面看似铜墙铁壁,但其实只要梳理一遍思路,右键看过每一行网站源码,弄懂每个参数的意义,查看每一个js文件,就会发现其实自己就是系统管理员,只是我把密码忘了,现在我要用上面的方式进入。

渗透控制什么意思

黑客技术里的渗透:

风险评估(Risk Assessment)存在于很多行业,但在IT业,独指信息安全风险评估,指依据有关信息技术标准,对信息系统及由其处理、传输和存储的信息的保密性、完整性和可用性(CIA)等安全属性进行科学、公正的综合评估的过程。它要评估信息系统的脆弱性、信息系统面临的威胁以及脆弱性被威胁源利用后所产生的实际负面影响,并根据安全事件发生的可能性和负面影响的程度来识别信息系统的安全风险。渗透测试(Penetration Testing)则是从一个攻击者的角度来检查和审核一个网络系统的安全性的过程。这本来是风险评估的一部分(存在于执行阶段),不应该与风险评估相提并论。但风险评估是一个过于庞大和复杂的体系,在如此短的篇幅里不能够完全详述,所以把渗透测试这一个富有争议性、纯技术的并且也是可以从风险评估中分离出来的内容单独分离了出来。

从风险评估的定义中可以看出,这是写一个大部头著作的好题材。首先,从各种标准看,管理标准有BS7799 (ISO/IEC 17799)信息安全管理体系标准、ISO/IEC 13335信息安全管理标准、ISO 7498 、OCTAVE标准等;技术与工程标准有SSE-CMM安全系统工程能力成熟度模型、ISO/IEC 15408(GB/T18336)信息产品通用测评准则;此外还有众多的事实标准。其实施过程又可分为:项目定义阶段、构建蓝图阶段、具体执行阶段、评估报告生成阶段和藕断丝连的售后服务阶段。

在风险评估的实施过程中,有一步最为关键,那就是执行阶段。前期所做的准备都是为该阶段服务,后期的报告生成和售后服务也依赖于执行阶段所得到的大量信息。在这个关键阶段中,有一个重点—渗透测试。渗透测试不单单是风险评估的一部分,也是企业网络防御体系当中的重要组成部分。一次成功的渗透测试可以发现企业网络中最薄弱的部分,使在网络安全方面的有限投入可以得到最大的回报。渗透测试可以从系统外部模拟真实的入侵者,从与系统管理人员相反的角度考虑系统的安全性,渗透测试报告可以作为风险评估中重要的原始数据,也可以作为向投资方或管理人员提供的网络安全状况方面的具体证据。

0条大神的评论

发表评论