右侧
黑客技术
当前位置:网站首页 > 网站入侵 > 正文

web渗透测试工具编写入门_如何编写渗透测试工具

作者:hacker发布时间:2022-07-23分类:网站入侵浏览:87评论:5


导读:导航:1、如何进行Web渗透测试2、如何系统学习web安全,web渗透测试3、新手想要学web渗透,网络安全,要如何开始4、web渗透测试工具5、零基础如...

导航:

如何进行Web渗透测试

什么是渗透测试?

渗透测试,是渗透测试工程师完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标网络、主机、应用的安全作深入的探测,发现系统最脆弱的环节。

如何进行Web渗透测试?

完整web渗透测试框架当需要测试的web应用数以千计,就有必要建立一套完整的安全测试框架,流程的最高目标是要保证交付给客户的安全测试服务质量。

1、立项:项目建立,时间安排,人力分配,目标制定,厂商接口人确定;

系统分析威胁分析:针对具体的web应用,分析系统架构、使用的组件、对外提供的接口等,以STRIDE为威胁模型进行对应的安全威胁分析,输出安全威胁分析表,重点关注top3威胁;

制定测试用例:根据威胁分析的结果制定对应的测试用例,测试用例按照模板输出,具备可执行性;

测试执行漏洞挖掘:测试用例执行发散测试,挖掘对应的安全问题or漏洞;

问题修复回归测试:指导客户应用开发方修复安全问题or漏洞,并进行回归测试,确保安全问题or漏洞得到修复,并且没有引入新的安全问题;

项目总结评审:项目过程总结,输出文档评审,相关文档归档。

2、Web应用的渗透测试流程

主要分为3个阶段,分别是:信息收集→漏洞发现→漏洞利用,下面仔细分析一下各个阶段流程:

一、信息收集

在信息收集阶段,我们需要尽量多的收集关于目标web应用的各种信息,比如:脚本语言的类型、服务器的类型、目录的结构、使用的开源软件、数据库类型、所有链接页面,用到的框架等

脚本语言的类型:常见的脚本语言的类型包括:php、asp、aspx、jsp等

测试方法:

1 爬取网站所有链接,查看后缀

2 直接访问一个不存在页面后面加不同的后缀测试

3 查看robots.txt,查看后缀

服务器的类型:常见的web服务器包括:apache、tomcat、IIS、ngnix等

测试方法:

1 查看header,判断服务器类型

2 根据报错信息判断

3 根据默认页面判断

目录的结构:了解更多的目录,可能发现更多的弱点,如:目录浏览、代码泄漏等。

测试方法

1 使用字典枚举目录

2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取

3 查看robots.txt是否泄漏

使用的开源软件:我们如果知道了目标使用的开源软件,我们可以查找相关的软件的漏洞直接对网站进行测试。

测试方法

指纹识别(网络上有很多开源的指纹识别工具)

数据库类型:对于不同的数据库有不同的测试方法。

测试方法

1 使应用程序报错,查看报错信息

2 扫描服务器的数据库端口(没做NAT且防火墙不过滤时有效)

所有链接页面:这个跟前面的获取目录结构类似,但是这个不只是获取网站的所有功能页面,有时候还可以获取到管理员备份的源码。

测试方法

1 使用字典枚举页面

2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取

3 查看robots.txt是否泄漏

用到的框架:很多网站都利用开源的框架来快速开发网站,所以收集网站的框架信息也是非常关键的。

测试方法

指纹识别(网络上有很多开源的指纹识别工具)

二、漏洞发现

在这个阶段我们在做测试的时候要对症下药,不能盲目的去扫描,首先要确定目标应用是否使用的是公开的开源软件,开源框架等、然后在做深一度的漏洞扫描。

关于开源软件的漏洞发现

开源的软件:常见的开源软件有wordpress、phpbb、dedecms等

开源的框架:常见的开源框架有Struts2、 Spring MVC、ThinkPHP等

中间件服务器:常见的中间件服务器有jboss、tomcat、Weblogic等

数据库服务:常见的数据库服务mssql、mysql、oracle、redis、sybase、MongoDB、DB2等

对于开源软件的测试方法

1 通过指纹识别软件判断开源软件的版本信息,针对不同的版本信息去开放的漏洞数据库查找相应版本的漏洞进行测试

2 对于默认的后台登录页、数据库服务端口认证等入口可以进行简单的暴力破解、默认口令尝试等操作

3 使用开源的漏洞发现工具对其进行漏洞扫描,如:WPScan

关于自主开发的应用

手动测试:这个阶段,我们需要手工测试所有与用户交互的功能,比如:留言、登入、下单、退出、退货、付款等操作

软件扫描:使用免费的软件扫描,如:appscan、wvs、netsparker,burp等

可能存在的漏洞

Owasp关键点

代码安全之上传文件

代码安全之文件包含

代码安全之SSRF

逻辑漏洞之密码重置

逻辑漏洞之支付漏洞

逻辑漏洞之越权访问

平台安全之中间件安全

三、漏洞利用

针对不同的弱点有不同的漏洞利用方式,需要的知识点也比较多。一般这个阶段包括两种方式,一种是手工测试,一种是工具测试

手工测试

手工测试是通过客户端或服务器访问目标服务,手工向目标程序发送特殊的数据,包括有效的和无效的输入,观察目标的状态、对各种输入的反应,根据结果来发现问题的漏洞检测技术。手工测试不需要额外的辅助工具,可由测试者独立完成,实现起来比较简单。但这种方法高度依赖于测试者,需要测试者对目标比较了解。手工测试可用于Web应用程序、浏览器及其他需要用户交互的程序。

这种方式对于有特殊过滤等操作,或者网络上没有成型的利用工具的时候可以使用。

工具测试

网络上有很多好用的免费利用工具,比如针对sql注入的sqlmap、针对软件漏洞的matesploit等。

如何系统学习web安全,web渗透测试

首先得清楚web安全/web渗透是什么:模拟黑客攻击,利用黑客技术,挖掘漏洞,提出修复建议。

涉及到的技术有:数据库/网络技术/编程技术/操作系统/渗透技术/攻防技术/逆向技术/SRC漏洞平台/ctf经验。。

岗位能力要求:

1、熟练使用awvs、nessus、metasploit、burpsuite等安全测试工具,并对其原理有一定了解

2、熟悉OWASP中常见的web安全漏洞、业务逻辑漏洞及其原理

3、熟悉渗透测试技术的整体流程,具备独立开展渗透工作的能力;

4、熟悉linux系统操作,了解常见web中间件、数据库、服务器相关漏洞

5、至少掌握一种编程语言,能够开发用于辅助日常工作的脚本

6、具备一定的php或java代码审计能力,能够对公开漏洞进行分析

7、具备良好的逻辑思维、沟通技巧及团队协作能力

8、已取得信息安全等级测评师证书的优先。(NISP)

想要系统的学习web渗透,可以参考企业对人才的要求进行学习。

新手想要学web渗透,网络安全,要如何开始

首先想想是不是真心想学,这条路注定孤独寂寞,不断碰壁。

想好后,就要每天坚持。

我的一些建议:每天多任务进行,比如早上两小时看英语学习,之后看语言,(C语言之后python之后php),下午看些网络上的渗透资料,晚上实践,等到资料看完。可以开始看看渗透博客,然后下午晚上自由分配

web渗透测试工具

第一个:NST

NST一套免费的开源应用程序,是一个基于Fedora的Linux发行版,可在32和64位平台上运行。这个可启动的Live

CD是用于监视、分析和维护计算机网络上的安全性;它可以很容易地将X86系统转换为肉机,这有助于入侵检测,网络流量嗅探,网络数据包生成,网络/主机扫描等。

第二个:NMAP

NMAP是发现企业网络中任何类型的弱点或漏洞的绝佳工具,它也是审计的好工具。该工具的作用是获取原始数据包并确定哪些主机在网络的特定段上可用,正在使用什么操作系统,以及识别特定主机的数据包防火墙或过滤器的不同类型和版本正在使用。NMAP对渗透测试过程的任何阶段都很有用并且还是免费的。

第三个:BeEF工具

BeEF工具主要利用移动端的客户,它的作用是用于检查Web浏览器,对抗Web抗击。BeEF用GitHub找漏洞,它探索了Web边界和客户端系统之外的缺陷。很重要的是,它是专门针对Web浏览器的,能够查看单个源上下文中的漏洞。

第四个:Acunetix Scanner

它是一款知名的网络漏洞扫描工具,能审计复杂的管理报告和问题,并且通过网络爬虫测试你的网站安全,检测流行安全漏洞,还能包含带外漏洞。它具有很高的检测率,覆盖超过4500个弱点;此外,这个工具包含了AcuSensor技术,手动渗透工具和内置漏洞测试,可快速抓取数千个网页,大大提升工作效率。

第五个:John the Ripper

它是一个简单可快速的密码破解工具,用于在已知密文的情况下尝试破解出明文的破解密码软件,支持大多数的加密算法,如DES、MD4、MD5等。

零基础如何学习web渗透

web后台开发学习步骤: 1、学习HTML和CSS。HTML(超文本标记语言)是网页的核心,学好HTML是成为Web开发人员的基本条件。学习CSS了,它可以帮你把网页做得更美观。利用HTML和CSS模拟一些你所见过的网站的排版和布局(色彩,图片,文字样式等等)。 2、学习javascript,了解DOM。JavaScript是一种能让你的网页更加生动活泼的程序语言。学习JavaScript的基本语法,学会用javascript操作网页中dom元素。接着学习使用一些javascript库,比如jquery是大部分WEB开发人员都喜欢用的,通过Jquery可以有效的提高JavaScript的开发效率。 3、了解Web服务器。学习一点Unix和Linux的基本知识,因为大部分Web服务器都运行在Unix和Linux平台上。 4、学好一门服务器端脚本语言。目前流行的服务器脚本语言有:php、asp.net、jsp、ruby、python等。可以选一个自己喜欢的进行学习。 5、学习数据库及SQL语

求推荐web渗透入门书籍

2018web渗透教程百度网盘免费资源在线学习  

链接:

提取码: 5h3s  

2018web渗透教程 解压密码:xindong

6.提权

5.正反向代理与端口转发

4.中间人攻击与抓包

3.工具 1.php编程 9.绕过安全狗全过程.rar 8.实战.zip 7.内网.zip

2.web安全基础.rar 编程.pptx

1.PHP编程.docx 9.return+引用函数.mp4 8.函数.mp4  

标签:web渗透测试工具编写入门


已有5位网友发表了看法:

  • 访客

    访客  评论于 2022-07-23 23:31:13  回复

    抗击。BeEF用GitHub找漏洞,它探索了Web边界和客户端系统之外的缺陷。很重要的是,它是专门针对Web浏览器的,能够查看单个源上下文中的漏洞。第四个:Acunetix Scan

  • 访客

    访客  评论于 2022-07-23 20:06:09  回复

    可以获取到管理员备份的源码。测试方法1 使用字典枚举页面2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取3 查看robots.txt是否泄漏用到的框架:很多网站都利用开源的框架来快速开发网站,所以收集网站的框架信息也是非常关键的。测试方法指纹识别(网络上有很多开源的指纹识别工具)二、

  • 访客

    访客  评论于 2022-07-24 01:20:28  回复

    的漏洞利用方式,需要的知识点也比较多。一般这个阶段包括两种方式,一种是手工测试,一种是工具测试手工测试手工测试是通过客户端或服务器访问目标服务,手工向目标程序发送特殊的数据,包括有效的和无效的输入,观察目标的状态、对各种输入的反应,根据结果来发现问题的漏洞检测技术。手工测试不需要额外的辅助工具,可

  • 访客

    访客  评论于 2022-07-24 00:31:12  回复

    审计复杂的管理报告和问题,并且通过网络爬虫测试你的网站安全,检测流行安全漏洞,还能包含带外漏洞。它具有很高的检测率,覆盖超过4500个弱点;此外,这个工具包含了AcuSensor技术,手动渗透工具和内置漏洞

  • 访客

    访客  评论于 2022-07-23 19:24:36  回复

    ,web渗透测试首先得清楚web安全/web渗透是什么:模拟黑客攻击,利用黑客技术,挖掘漏洞,提出修复建议。涉及到的技术有:数据库/网络技术/编程技术/操作系统/渗透技术/攻防技术/逆向技术/SRC漏洞平台

欢迎 发表评论:

网站入侵排行
最近发表
标签列表