首页 > 其他分享 >自动化渗透

自动化渗透

时间:2023-04-17 13:33:39浏览次数:28  
标签:分析 请求 渗透 漏洞 测试 自动化 进行

1、渗透分类

1.1 手工和自动化

(1)手工测试

主要是基于浏览器和burp工具,可以进行高度自由的参数设置和响应加载查看。

优点是过程灵活,请求量少,频率低,对于逻辑性要求强的漏洞有很好的效果。

缺点是任务量大,部分漏洞类型测试枯燥,可能遗漏。另一方面,针对验证码爆破这类时效性要求高的测试是无法完成的。严重依赖测试人员的技术水平。

(2)自动化测试

利用程序进行自动化测试,预先设置参数和过程,并进行分析输出。

优点是对于参数确定、过程确定、结果确定的测试,有非常强大效率

缺点是请求量,以及可能发出危险动作的请求,干扰正常业务。另一方面,对于逻辑性强的测试无法直接胜任

(3)综合

实际测试中,一般是手工和自动化结合,以及介于之间的半自动化测试。

所谓半自动化测试,即不同于手工的原始数据和参数设置,也不同于自动化的完全分析结果和自动化设置参数,

而是根据调试的模板快速设置参数,对原始数据进行一定的分析,然后交给人工进一步处理。

1.2 自动化分类

(1)按阶段划分

信息收集、漏洞发现、漏洞利用、提权、清除痕迹、报告生成

(2)按单一和综合

比如sqlmap是单一的针对sql注入的工具,而nikto是综合工具

(3)按开发者划分

其他开发:

  • 优点是可以直接使用,一般是专业的,并且集成了需要大量时间、精力收集的指纹库、exp、poc等数据
  • 缺点是
    • 对于使用者可能是语法复杂的,不符合交互习惯,需要学习与适应。
    • 另一方面,一般存在集成化过高的特征,不方便控制。
    • 部分是非开源,或者即使开源也存在阅读困难,对实现过程不了解,安全性问题。
    • 其他开发总会出现更新频率低,长期无维护,版本老旧无法在新版本系统使用
    • 存在选择困难,少量的工具存在应用场景不足,而过多工具又存在管理困难,学习难度大,业务重叠问题

自定义开发:

  • 优点是可以完全按照自己的技术水平、测试和交互习惯,进行集成度自由控制的开发,并且灵活添加需要的格式和功能,进行更新
  • 缺点:
    • 需要相对较高的程序开发能力,以及对漏洞测试的能力
    • 根据程序的完善程度,初始时能力有限
    • 需要收集指纹库、exp、poc等数据

2、自动化

2.1 底层原理

自动化的核心,是对请求进行自动化的参数设置,以及对响应进行分析。

2.2 测试的大致过程

(1)确定请求

一般是针对一个样本请求进行分析,按照各漏洞类型的前置条件判断该请求是否满足,比如是否包含响应体部,是否包含token,是否包含url形式的参数等等,然后进行逐类型测试。

(对于某些漏洞类型来讲,需要多样本请求分析,比如会话固定、逻辑漏洞)

(2)确定待测参数,进行请求

(3)分析响应

分析可能是边请求边进行,也可能是请求完成后再进行。

一般来说,前者能够发出更少的请求,以避免被目标发现或干扰目标的业务,编程实现任务更大。

后者更强调配置,编程相对简单,但可能存在大量非必要请求。

(4)进一步确定和利用

某些漏洞类型的测试的发现、确定、利用界限是模糊的,而另外一些,比如xss和sql,测试环境复杂,可能性非常多。

因此,可以先使用较少的、通用的payload进行测试,如果存在漏洞的可能性,则进一步使用更精确的、数量更多的payload进行测试与利用。

(5)生成报告

一般是随着测试步骤同步进行输出

2.3 分析技术

(1)从阶段上来说,分为前置条件的分析、漏洞发现的分析、漏洞利用的分析

(2)可以分为请求分析和响应分析

(3)可以分为单请求-响应分析,以及多请求-响应分析

(4)可以分为关键字包含与提取、正则判断与提取、html及json等格式的判断与提取

2.4 常用模块

(1)代理

(2)日志查看和分析

(3)爆破

(4)请求与查看响应

(5)比较

(6)数据处理

(7)针对各漏洞类型的测试

3、自定义开发

选择python3+pyqt5+requests技术

根据功能,分成多个项目开发

 

标签:分析,请求,渗透,漏洞,测试,自动化,进行
From: https://www.cnblogs.com/wd404/p/17325554.html

相关文章

  • 渗透测试的步骤
    1、明确目标范围,规则,需求。(1)确定需要渗透资产范围需要测试的域名、ip、端口、路径(模块)有时候,客户并不明确指出,而是相关即可。这时候,需要通过信息收集完成任务(2)确定渗透的相关规则对测试手段约束,禁止工具扫描,禁止暴力破解,禁止社工,禁止提权及危险的操作,禁止ddos及其......
  • 如何利用HTTP代理实现自动化爬虫任务管理
    在进行爬虫任务管理时,我们需要对爬取目标、爬取频率、数据存储等多个方面进行规划和管理。使用HTTP代理可以帮助我们提高爬虫效率,同时也可以实现自动化的爬虫任务管理。本文将介绍如何利用HTTP代理实现自动化爬虫任务管理。第一步:选择HTTP代理在选择HTTP代理时,需要考虑......
  • 记录selenium,python自动化测试中的chromedriver.exe地址和打开后自动关闭浏览器问题
    selenium的官方地址为:https://selenium-python.readthedocs.io/index.html镜像地址:https://npmmirror.com/#导入webdriverfromseleniumimportwebdriverfromselenium.webdriver.common.byimportBy#调用键盘按键操作时需要引入的Keys包fromselenium.webdriver.common.k......
  • 网络安全与Kali Linux:Sqlmap数据库注入与渗透环境搭建
    一、背景介绍DVWA(DamnVulnerableWebApp)是一个基于PHP/MySql搭建的Web应用程序,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助Web开发者更好的理解Web应用安全防范的过程。DVWA一共包含十个模块分别是:1.BruceForce//暴力破解1.CommandInjection//命令......
  • 网络安全工程师教你:Kali Linux之Metasploit渗透测试基础(四)
    本分享仅做学习交流,请自觉遵守法律法规!搜索:Kali与编程,学习更多网络攻防干货!下篇文章将在明天下午五点发布,敬请关注!Metasploit渗透测试框架基础(四)一、背景介绍Metasploit就是一个漏洞框架。它的全称叫做TheMetasploitFramework,简称叫做MSF。Metasploit作为全球最受欢迎的工具,不......
  • .NET无侵入自动化探针原理和主流实现
    前言最近,我在微信公众号和博客园分享了一篇关于.NET微服务系统迁移至.NET6.0的故事的文章,引起了许多读者的关注。其中,许多人对基于OpenTelemetry.NET的观测指标和无侵入自动化探针颇感兴趣。事实上,我已计划抽出时间,与大家分享这方面的内容。巧合的是,在二月末,我收到了来自Op......
  • UI自动化,关键数据记录
    关键数据记录的作用内容作用执行日志1.记录代码的执行记录,方便复现场景2.可以作为bug依据截图1.断言失败或成功截图2.异常截图达到丰富报告的作用3.可以作为bug依据pagesource协助排查报错时元素当时是否存在页面上执行日志日志配置脚本日......
  • 新一代自动化测试神器Playwright
    转载请注明出处❤️作者:测试蔡坨坨原文链接:caituotuo.top/4bedb73c.html你好,我是测试蔡坨坨。说到WebUI自动化测试,首当其冲的当属Selenium,在很长的一段时间内,Selenium统治着Web自动化,Selenium其实经历了四个阶段,从2006年发布的Selenium1.0到最新的Selenium4.8.3。2006年,Se......
  • Shell编程自动化之Shell编程基础
    一、Shell可以用来做什么1.自动化批量系统初始化程序;2.自动化批量软件部署程序;3.应用程序管理;4.日志分析处理程序;5.自动化备份恢复程序;6.自动化信息采集及监控程序;7.自动化管理程序;二、Shell概述1.Shell是操作系统的外壳,是用户操作系统的命令接口,是一个介于用户和系统内核......
  • AutoGPT:未来自动化的必备工具
     在这篇文章中,我们将研究什么是Auto-GPT,它是如何工作的,以及它可以完成的任务类型。 什么是AutoGPT?AutoGPT是一个前沿程序,正在改变任务自动化的世界。这是一个开源程序,利用GPT-4等LLM的强大功能自主创建和处理各种工作。通过使用AutoGPT,组织和个人可以简......