ACUNETIX 使用Python和Acunetix API管理扫描

在本系列的前两期中,我们向您展示了如何使用Bash和PowerShell以及Acunetix API来管理Acunetix扫描。在本文中,您将学习如何使用Python进行相同的操作。作为示例,我们将创建一个Python脚本,该脚本使用请求库向Acunetix REST API发出请求。

必须通过在HTTP请求标头中提供API密钥来对每个API调用进行身份验证,因此,每个请求都使用以下标头进行:

Content-Type: application/json X-Auth: 可以从Acunetix配置文件页面检索API密钥。

剧本剖析 该脚本具有以下结构:

首先,我们声明清除功能,该功能是一种恢复功能,用于在检测到无效的扫描状态时删除脚本创建的扫描和目标: 该remove_scan API调用需要我们做出DELETE请求/扫描/ {} SCAN_ID端点; 扫描ID由下面描述的脚本的主要部分检索 该remove_target API调用,需要我们做出一个DELETE请求到/目标/ {} target_id端点; 目标ID由下面描述的脚本的主要部分检索 然后,我们声明将在整个脚本中使用的起始全局变量: MyAXURL是Acunetix API的基本URL,通常为: 本地:https:// :3443 / api / v1 在线:https : //online.acunetix.com/api/v1 MyAPIKEY是API密钥,可以从配置文件页面中检索 MyTargetURL是最终要扫描的目标的URL MyTargetDESC是对目标的友好描述 FullScanProfileID是默认的“完全扫描”的配置文件ID 。此默认扫描配置文件的值始终为11111111-1111-1111-1111-111111111111 MyRequestHeaders是HTTP请求标头的数组(包括使用Acunetix API密钥进行的身份验证) 接下来,我们创建目标: add_target函数的API文档显示: 我们必须向/ targets端点发出POST请求; 主体应采用JSON格式,并至少包含4个键:地址,描述,类型和关键性;在我们的示例中: { "address": " http://testphp.vulnweb.com/", "description": "Test PHP Site - created via ax-python-api.ps1", "type": "default", "criticality": 10 } 响应将为JSON格式;我们要从响应中提取的关键信息是target_id键的值 下一步,我们安排扫描: schedule_scan函数的API文档显示: 我们必须向/ scans端点发出POST请求; 主体应为JSON格式;在我们的示例中: { "profile_id": "11111111-1111-1111-1111-111111111111", "

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值