From 752bce3b0e41a9c076d2c5df9047285787aa0cad Mon Sep 17 00:00:00 2001 From: sule01u Date: Mon, 13 Nov 2023 20:05:30 +0800 Subject: [PATCH] update readme --- README.md | 2 +- sbscan.py | 20 ++++++-------------- 2 files changed, 7 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index fc1d03c..13bcd3b 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # ✈️ 一、工具概述 -## SBSCAN:(spring框架渗透,这一个工具就够了,如果工具对你有用,点亮🌟吧🤩) +## SBSCAN:(spring框架渗透,这一个工具就够了,如果工具对你有用,请不要吝啬一个star🌟哦) **SBSCAN是一款专注于spring框架的渗透测试工具,可以对指定站点进行spring boot敏感信息扫描以及进行spring相关漏洞的扫描与验证。** - **最全的敏感路径字典**:最全的spring boot站点敏感路径字典,帮你全面检测站点是否存在敏感信息泄漏 diff --git a/sbscan.py b/sbscan.py index b8693de..8634d83 100644 --- a/sbscan.py +++ b/sbscan.py @@ -7,13 +7,14 @@ date: 2023/10/8 """ import sys -from utils.banner import banner +import signal from click import Command, Context import click from managers.proxy_manager import ProxyManager from managers.scanner_manager import ScannerManager from utils.logging_config import configure_logger from utils.args_prase import ArgumentParser +from utils.banner import banner logger = configure_logger(__name__) @@ -33,22 +34,14 @@ def format_usage(self, ctx: Context, formatter): @click.option("-q", "--quiet", is_flag=True, help="纯净版输出,仅输出命中的结果") @click.option("-h", "--help", is_flag=True, callback=lambda ctx, param, value: ctx.exit(click.echo(ctx.get_help()) or 0) if value else None, expose_value=False, help="显示帮助信息") def main(url, file, mode, proxy, dnslog, threads, fingerprint_filter, quiet): - # 参数解析与验证 try: + # 参数解析与验证 args_parser = ArgumentParser(url, file, proxy, threads) args_data = args_parser.parse_and_validate() logger.debug(args_data) - except ValueError as e: - click.secho(str(e), fg='red') - sys.exit() - # 代理管理 - try: + # 代理管理 proxy_manager = ProxyManager(args_data["proxy"]) - except Exception as e: - click.secho(str(e), fg='red') - sys.exit() - # 扫描管理 - try: + # 扫描管理 manager = ScannerManager(args_data["urls"], mode, proxy_manager, dnslog, args_data["threads"], fingerprint_filter, quiet) click.secho("[+] 扫描时间部分情况下可能稍长,请耐心等待扫描结果[Please wait for the scan results]:", fg='green', bold=True) logger.info("Starting scan for target URLs") @@ -58,9 +51,8 @@ def main(url, file, mode, proxy, dnslog, threads, fingerprint_filter, quiet): if quiet and not report_data: click.secho("[-] 目标未命中任何检测规则 [No sensitive paths or CVEs detected for the provided URLs]", fg="yellow") manager.reporter.save_report_to_file() - except KeyboardInterrupt: - click.secho("[-] 已手动中断扫描 [Interrupted scan].", fg='red') + click.secho("[-] 用户终止扫描 [User aborted the scan]", fg="yellow") sys.exit() except Exception as e: logger.error(e, extra={'url': "target_url"})