当前位置: 首页 > news >正文

Natlas API开发详解:自动化扫描任务与数据查询接口使用指南

Natlas API开发详解:自动化扫描任务与数据查询接口使用指南

【免费下载链接】natlasAttack Surface Management since before Attack Surface Management was a thing项目地址: https://gitcode.com/gh_mirrors/na/natlas

Natlas是一款强大的攻击面管理工具,其API接口为开发者提供了自动化扫描任务与数据查询的能力。通过Natlas API,您可以轻松地集成扫描功能到自己的应用中,实现高效的网络安全管理。

一、API基础信息

1.1 API规范与认证

Natlas API遵循Swagger 2.0规范,详细定义了所有可用接口。您可以在项目的spec/swagger.yaml文件中查看完整的API文档。

API认证采用bearer {agent_id}:{auth_token}的方式,在请求头中添加Authorization字段进行身份验证。这种认证方式确保了API访问的安全性,只有拥有有效令牌的代理才能与服务器进行通信。

1.2 基础路径与数据格式

API的基础路径为/api,支持HTTP和HTTPS两种协议。所有请求和响应的数据格式均为JSON,便于开发者进行解析和处理。

二、核心API接口详解

2.1 获取扫描服务列表

接口路径/natlas-services
请求方法:GET
功能描述:返回最新版本的所有扫描服务列表,供nmap使用。

该接口返回的服务列表是一个文本 blob,包含换行分隔的服务信息,直接用于nmap的--servicedb参数。通过定期调用此接口,您可以确保扫描工具使用最新的服务定义,提高扫描准确性。

2.2 获取扫描任务

接口路径/getwork
请求方法:GET
功能描述:获取一个扫描任务,包括目标IP、扫描配置等信息。

响应中包含scan_idtargettagsagent_config等关键信息。agent_config提供了详细的扫描参数,如版本检测、OS检测、脚本超时时间等,您可以根据这些配置执行相应的扫描操作。

2.3 提交扫描结果

接口路径/submit
请求方法:POST
功能描述:提交扫描结果到服务器。

提交的数据需要包含scan_idipscan_reason以及nmap生成的xml、nmap和gnmap格式数据。此外,还可以包含扫描开始和结束时间、端口数量、截图等信息。服务器在成功解析并处理结果后,会返回相应的状态信息。

2.4 查询服务器状态

接口路径/status
请求方法:GET
功能描述:获取服务器的当前状态信息。

通过该接口,您可以了解服务器已完成的扫描周期数、当前周期开始时间、有效范围大小、服务器启动时间等重要状态数据。这些信息对于监控扫描进度和系统健康状况非常有用。

三、API使用示例

3.1 认证示例

在请求头中添加认证信息:

Authorization: bearer your_agent_id:your_auth_token

3.2 获取扫描任务示例

发送GET请求到/api/getwork,您将收到类似以下的响应:

{ "scan_id": "7v8emfj4ux2vutmn", "scan_reason": "automatic", "target": "127.34.23.56", "tags": ["corpnet-a", "marketing"], "agent_config": { "versionDetection": true, "osDetection": true, "scanTimeout": 660 } }

3.3 提交扫描结果示例

发送POST请求到/api/submit,请求体包含扫描结果数据:

{ "scan_id": "7v8emfj4ux2vutmn", "ip": "127.34.23.56", "scan_reason": "automatic", "xml_data": "...", "nmap_data": "...", "gnmap_data": "...", "scan_start": "2023-07-01T10:00:00Z", "scan_stop": "2023-07-01T10:10:00Z", "is_up": true, "port_count": 5 }

四、API安全与权限

Natlas API的安全性由多个层面保障。所有API令牌均使用Python的secrets模块生成,通过抗时序攻击的函数进行比较。除/api/路由外,所有路由都受Flask WTF的CSRF保护。当启用代理认证时,只有拥有有效API密钥的代理才能访问API路由。

您可以在用户个人资料页面(natlas-server/app/templates/user/profile.html)中查看和管理您的API密钥。

五、总结

Natlas API为开发者提供了强大的自动化扫描任务与数据查询能力,通过本文介绍的核心接口,您可以轻松地构建自定义的扫描工作流和数据处理应用。无论是集成到现有安全系统还是开发新的安全工具,Natlas API都能为您提供灵活而可靠的支持。

建议您结合spec/swagger.yaml中的详细API文档进行开发,以充分利用Natlas的强大功能。如有任何问题或需要进一步的帮助,请查阅项目的官方文档或参与社区讨论。

【免费下载链接】natlasAttack Surface Management since before Attack Surface Management was a thing项目地址: https://gitcode.com/gh_mirrors/na/natlas

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/1399972/

相关文章:

  • VManagePlatform网络管理终极教程:OpenVSwitch与Linux Bridge配置
  • 金华市磐安县GEO服务商代理加盟怎么选?2026年国内靠谱品牌推荐与避坑指南 - 科技快讯
  • 单糖App部署与测试指南:Xcode配置与第三方库管理全流程
  • 杭州黄金回收报价纷繁复杂,收的顶依照实时金价合理估价 - 日常前沿快讯
  • 2026年邯郸钻石戒指回收,(185-3117-2838)丛台区中华北大街29号赵掌柜二奢十年老店回收鉴定钻石戒指回收钻戒回收钻石项链 - 赵掌柜二奢
  • 如何解决TC²-BBS-mesh常见问题:从连接到同步的实用技巧
  • swift-embedded进阶教程:如何为新的STM32F4系列开发板添加支持
  • Mockito for Dart核心功能解析:when、verify与参数捕获实战
  • 如何在10分钟内搭建Relay Fullstack项目:从安装到运行的快速教程
  • ComfyTextures三种工作模式对比:Create/Refine/Edit适用场景与技巧
  • FastGAN-pytorch预训练模型使用教程:从Docker到本地部署的简单步骤
  • 革命性React弹窗管理库overlay-kit:如何用声明式API彻底简化模态框开发
  • 如何在5分钟内创建你的第一个Darkwallet:安全钱包设置与种子备份教程
  • 摩托车托运哪个物流好?2026年电动车托运避坑指南+省钱攻略 - 快递物流资讯
  • Obfusk8高级技巧:用obfuscate_pe.ps1脚本消除PE文件 forensic 痕迹
  • VictoriaMetrics/metrics性能优化指南:低内存占用监控实践
  • MAMEToolkit核心组件解析:Emulator与Environment工作原理
  • 干货别划走!2026中山包包老店回收实测报告,上门回收当场现金结算,无手续费安心出闲置! - 品牌观测员
  • 嵌入式开发老手也头疼的三个难题,FPrime 如何用“搭积木“的方式逐个击破
  • ORB_SLAM2_ROS常见问题排查:从编译错误到运行时异常全解决
  • Kali Linux渗透测试实战指南:从零构建网络安全攻防思维与技能
  • backoff完全入门:从安装到实战的简单教程
  • 2026年国内GEO服务商代理加盟靠谱推荐:温州鹿城区企业选型与启动指南 - 子柔传媒
  • Obsidian 表格增强插件 Table Enhancer 完整指南:不碰源码,像用 Excel 一样编辑表格
  • 10分钟上手Mockito for Dart:从安装到第一个模拟测试
  • 2026年温州瑞安市GEO服务商代理加盟哪家靠谱?国内GEO服务商推荐与避坑指南 - 子柔传媒
  • 电商、B2B与本地生活:怎么选GEO监测工具?
  • 为code-server配置HTTPS:使用Caddy实现自动化安全部署
  • 西安闲置手表高价处置渠道汇总 线下实体店交易全指南 - 朝夕热点速报
  • Free-GPT4-WEB-API完全指南:从Docker部署到Python运行的两种快速上手方式