![图片[1]-Noir:一个源代码形式的攻击面检测器-IT熊技术站](https://www.cutrui.cn/wp-content/uploads/2023/08/Noir.png)
主要特征
- 从源代码中自动识别语言和框架。
- 通过代码分析查找API端点和网页。
- 通过与 ZAP、Burpsuite、Caido 等代理工具交互,快速加载结果。
- 它为已识别的攻击面提供 JSON 和 HAR 等结构化数据,以实现与其他工具的无缝交互。还提供命令行示例,以便轻松与其他工具集成和协作,例如curls或httpie。
可用的支持范围
端点实体
- Path
- 方法
- 参数
- 标头
- 协议(例如 ws)
语言和框架
语言 | 框架 | URL | 方法 | 参数 | 标头 | 协议 |
---|---|---|---|---|---|---|
Go | Echo | ✅ | ✅ | ✅ | X | X |
Python | Django | ✅ | X | X | X | X |
Python | Flask | ✅ | X | X | X | X |
Ruby | Rails | ✅ | ✅ | ✅ | ✅ | X |
Ruby | Sinatra | ✅ | ✅ | ✅ | ✅ | X |
Php | ✅ | ✅ | ✅ | X | X | |
Java | Spring | ✅ | ✅ | X | X | X |
Java | Jsp | X | X | X | X | X |
Crystal | Kemal | ✅ | ✅ | ✅ | ✅ | ✅ |
JS | Express | ✅ | ✅ | X | X | X |
JS | Next | X | X | X | X | X |
规格
规格 | 格式 | URL | 方法 | 参数 | 标头 | 协议 |
---|---|---|---|---|---|---|
OAS 2.0 (Swagger 2.0) | JSON | ✅ | ✅ | ✅ | ✅ | X |
OAS 2.0 (Swagger 2.0) | YAML | ✅ | ✅ | ✅ | ✅ | X |
OAS 3.0 | JSON | ✅ | ✅ | ✅ | ✅ | X |
OAS 3.0 | YAML | ✅ | ✅ | ✅ | ✅ | X |
安装
自制软件 (macOS)
brew tap hahwul/noir
brew install noir
来源
# Install Crystal-lang
# https://crystal-lang.org/install/
# Clone this repo
git clone https://github.com/hahwul/noir
cd noir
# Install Dependencies
shards install
# Build
shards build --release --no-debug
# Copy binary
cp ./bin/noir /usr/bin/
Docker (GHCR)
docker pull ghcr.io/hahwul/noir:main
用法
Usage: noir <flags>
Basic:
-b PATH, --base-path ./app (Required) Set base path
-u URL, --url http://.. Set base url for endpoints
-s SCOPE, --scope url,param Set scope for detection
Output:
-f FORMAT, --format json Set output format [plain/json/markdown-table/curl/httpie]
-o PATH, --output out.txt Write result to file
--set-pvalue VALUE Specifies the value of the identified parameter
--no-color Disable color output
--no-log Displaying only the results
Deliver:
--send-req Send the results to the web request
--send-proxy http://proxy.. Send the results to the web request via http proxy
Technologies:
-t TECHS, --techs rails,php Set technologies to use
--exclude-techs rails,php Specify the technologies to be excluded
--list-techs Show all technologies
Others:
-d, --debug Show debug messages
-v, --version Show version
-h, --help Show help
例子
noir -b . -u https://testapp.internal.domains
![图片[2]-Noir:一个源代码形式的攻击面检测器-IT熊技术站](https://www.cutrui.cn/wp-content/uploads/2023/08/image-74-1024x426.png)
JSON 结果
noir -b . -u https://testapp.internal.domains -f json
[
...
{
"headers": [],
"method": "POST",
"params": [
{
"name": "article_slug",
"param_type": "json",
"value": ""
},
{
"name": "body",
"param_type": "json",
"value": ""
},
{
"name": "id",
"param_type": "json",
"value": ""
}
],
"protocol": "http",
"url": "https://testapp.internal.domains/comments"
}
]
项目地址
Noir:【Github地址】
© 版权声明
THE END
暂无评论内容