IMSI-catcher 开源项目使用教程
1. 项目的目录结构及介绍
IMSI-catcher/
├── README.md
├── imsi_catcher.py
├── config.ini
├── utils/
│ ├── __init__.py
│ ├── helper.py
│ └── logger.py
└── data/
├── captured_imsis.txt
└── logs/
- README.md: 项目说明文件,包含项目的基本介绍和使用方法。
- imsi_catcher.py: 项目的启动文件,负责启动和运行IMSI捕获程序。
- config.ini: 项目的配置文件,包含各种配置选项,如网络接口、日志级别等。
- utils/: 工具模块目录,包含项目中使用的各种辅助函数和类。
- init.py: 使utils目录成为一个Python包。
- helper.py: 包含一些辅助函数,如数据处理和格式化。
- logger.py: 包含日志记录相关的函数和配置。
- data/: 数据存储目录,包含捕获的IMSI数据和日志文件。
- captured_imsis.txt: 存储捕获的IMSI数据。
- logs/: 存储日志文件的目录。
2. 项目的启动文件介绍
imsi_catcher.py 是项目的启动文件,负责启动和运行IMSI捕获程序。以下是该文件的主要功能和结构:
import sys
import configparser
from utils.logger import setup_logger
from utils.helper import capture_imsis
def main():
# 读取配置文件
config = configparser.ConfigParser()
config.read('config.ini')
# 设置日志
logger = setup_logger(config['LOGGING']['log_level'])
# 捕获IMSI
capture_imsis(config, logger)
if __name__ == '__main__':
main()
- 导入模块: 导入必要的模块,包括配置文件处理、日志设置和辅助函数。
- main函数: 主函数,负责读取配置文件、设置日志并启动IMSI捕获过程。
- configparser: 用于读取和解析配置文件。
- setup_logger: 设置日志记录器,根据配置文件中的日志级别进行设置。
- capture_imsis: 执行IMSI捕获的函数。
3. 项目的配置文件介绍
config.ini 是项目的配置文件,包含各种配置选项,如网络接口、日志级别等。以下是该文件的示例内容:
[NETWORK]
interface = wlan0
[LOGGING]
log_level = INFO
log_file = data/logs/imsi_catcher.log
[CAPTURE]
output_file = data/captured_imsis.txt
- [NETWORK]: 网络配置部分,指定用于捕获IMSI的网络接口。
- [LOGGING]: 日志配置部分,指定日志级别和日志文件路径。
- [CAPTURE]: 捕获配置部分,指定捕获的IMSI数据输出文件路径。
通过修改这些配置选项,可以灵活地调整项目的运行参数。