dfirsec/string_searcher
GitHub: dfirsec/string_searcher
一款面向数字取证和应急响应场景的多线程文本搜索工具,支持正则匹配、日期过滤和文件大小限制,帮助分析师快速在目录中定位目标字符串。
Stars: 0 | Forks: 0
# String Searcher
此脚本允许您在目录中的所有基于文本的文件中搜索指定的字符串。
## 功能
- 支持简单字符串匹配和正则表达式
- 支持指定深度级别的递归搜索
- 可自定义要搜索的文件扩展名
- 支持在指定日期范围内搜索
- 提供文件大小限制选项
- 多线程搜索
## 安装说明
1. 克隆代码仓库或下载脚本文件。
git clone https://github.com/dfirsec/string_searcher.git
2. 导航到项目目录:
cd string_searcher
3. 使用 poetry 安装依赖项:
pip install poetry
poetry install
## 使用方法
1. 激活虚拟环境:
poetry shell
2. 使用以下命令运行脚本:
python string_searcher.py [options]
### 选项
- **``**:要搜索的目录。
- **``**:要搜索的字符串。
- **`--maxdepth `**:递归进入子目录的最大深度。默认值为 1。使用 '--maxdepth -1' 遍历所有子目录。
- **`-e `**:要搜索的文件扩展名。请提供以逗号分隔的列表。默认扩展名包括:`.bat`, `.cfg`, `.csv`, `.css`, `.html`, `.ini`, `.js`, `.log`, `.md`, `.ps1`, `.py`, `.sh`, `.txt`, `.xml`, `.yaml`, `.yml`。
- **`--maxline `**:显示的最大行长度。默认值为 1000。如果行被截断,请调整此值。
- **`--start-date `**:用于修改日期过滤的起始日期。请使用 YYYY-MM-DD 格式。
- **`--end-date `**:用于修改日期过滤的结束日期。请使用 YYYY-MM-DD 格式。
- **`--size-limit `**:要考虑的最大文件大小,单位为千字节 (KB)。
- **`-c, --case-sensitive`**:执行区分大小写的搜索。
### 示例
```
python string_searcher.py /path/to/search "search term" --maxdepth 3 -e .txt,.py,.md --maxline 500 --start-date 2023-01-01 --size-limit 1024
```
## 依赖项
**`rich`**:用于丰富的控制台输出。
## 许可证
此脚本基于 MIT 许可证授权。请随时根据您的需要进行修改和使用。
## 致谢
- 该脚本使用了 [rich](https://github.com/Textualize/rich) 库来增强控制台输出。
- 脚本中使用的横幅文本由 [Manytools](https://manytools.org/hacker-tools/ascii-banner/) 提供。
- 文本文件扩展名列表由 [File-Extensions](https://www.file-extensions.org/filetype/extension/name/text-files) 提供。
## 贡献
想要做贡献?欢迎提交 Pull Request。
标签:HTTP工具, Poetry, Python, 二进制发布, 代码示例, 库, 应急响应, 开源工具, 批量搜索, 敏感信息搜集, 数据分析, 数据泄露, 文件搜索, 文件过滤, 文件遍历, 无后门, 无线安全, 目录搜索, 红军工具, 网络安全审计, 蓝军工具, 逆向工具