讲师中心 微信公众号
AI工具推荐 视频效率加速

网安技能

Polar Sponsor
爱发电 赞助
.NET 9.0

网络安全与SRC漏洞掘金实战技能。融合「系统学习路径」与「SRC实战掘金」双模式: ①学习模式=法律→基础→工具→靶场→攻防→就业全流程; ②实战模式=直接指导在腾讯TSRC、阿里ASRC、百度BSRC等平台挖掘高价值漏洞变现。 当用户提出以下问题时触发: "我想学网络安全怎么入门""SRC漏洞怎么挖能赚钱""渗透测试需要学什么" "Web安全漏洞原理是什么""怎么准备CTF比赛""护网面试会问什

网络安全攻防与SRC掘金技能

功能概述

网络安全攻防与SRC掘金技能是一项面向实际任务的技能,主要用于🔷 两种使用模式;📚 学习模式 (系统入门);

核心要点

  • 按阶段1→15循序渐进,零基础到就业全流程;
  • 适合:在校学习、在职转岗、零基础入门;
  • 💰 掘金模式 (直接赚钱);

使用与执行

跳过学习,直接看「各阶段🎯实战掘金」板块,告诉你当前能挖什么漏洞、去哪个平台、奖金多少;适合:有基础想变现、急于副业收入;🚀 快速开始(3步上手);遇到问题先运行环境自检,90%的问题都能自动诊断出来。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

结果检查与注意事项

从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

网络安全攻防与SRC掘金技能

🔷 两种使用模式

📚 学习模式(系统入门)

按阶段1→15循序渐进,零基础到就业全流程。适合:在校学习、在职转岗、零基础入门。

💰 掘金模式(直接赚钱)

跳过学习,直接看「各阶段🎯实战掘金」板块,告诉你当前能挖什么漏洞、去哪个平台、奖金多少。适合:有基础想变现、急于副业收入。

🚀 快速开始(3步上手)

遇到问题先运行环境自检,90%的问题都能自动诊断出来。

第1步:环境自检

python scripts/check_env.py

运行后会输出完整的诊断报告,告诉你环境哪里有问题、怎么修。

第2步:安装依赖

pip install -r requirements.txt

第3步:运行第一个脚本

# 端口扫描(测试本地)
python scripts/port_scanner.py 127.0.0.1 1 100

# 子域名枚举
python scripts/subdomain_enum.py example.com

文件速查:

  • README.md — 快速入门
  • requirements.txt — Python依赖
  • scripts/check_env.py — 环境诊断(遇到问题先运行)
  • scripts/ — 5个实战脚本
  • references/ — 15个阶段学习文档

💰 SRC掘金实战指南(优先阅读)

这部分是技能的核心价值——学完能用,用完能赚钱。

国内主流SRC平台对比

平台 网址 奖金范围 结算速度 难度 推荐指数
腾讯TSRC security.tencent.com 100-100000元 快(1-2周) 中 ⭐⭐⭐⭐⭐
阿里ASRC asrc.alibaba.com 200-50000元 中(2-4周) 中高 ⭐⭐⭐⭐
百度BSRC bsrc.baidu.com 100-30000元 快 中 ⭐⭐⭐⭐
360SRC security.360.cn 50-20000元 中 低中 ⭐⭐⭐
京东JSRC src.jd.com 100-50000元 中 中 ⭐⭐⭐⭐
字节火山 security.bytedance.com 200-80000元 快 高 ⭐⭐⭐⭐⭐

漏洞类型 × 奖金对照表

漏洞类型 低危奖金 中危奖金 高危奖金 严重奖金 挖掘难度 出现频率
越权访问 200-500 500-2000 2000-10000 10000+ ⭐⭐ 极高
信息泄露 100-500 500-2000 2000-8000 8000+ ⭐ 极高
SQL注入 500-1000 1000-5000 5000-20000 20000+ ⭐⭐⭐ 高
逻辑漏洞 500-2000 2000-10000 10000-50000 50000+ ⭐⭐⭐ 中
XSS 100-300 300-1000 1000-5000 — ⭐ 高
未授权访问 200-1000 1000-5000 5000-20000 — ⭐ 高
RCE(远程代码执行) — 5000-20000 20000-100000 100000+ ⭐⭐⭐⭐⭐ 低
反序列化 — 2000-10000 10000-50000 50000+ ⭐⭐⭐⭐ 中低

💡 掘金建议:优先挖越权和信息泄露(容易且高频),其次逻辑漏洞(奖金高),有深度后再挖RCE(奖金最高但极难)。

高效挖掘工作流

① 选平台 → 注册账号,阅读奖励规则
    ↓
② 选目标 → 从平台资产列表挑软目标(新上线的业务最好挖)
    ↓
③ 信息收集 → 子域名枚举、端口扫描、目录爆破
    ↓
④ 漏洞发现 → 按「掘金优先级」顺序测试
    ↓
⑤ 编写报告 → 用标准模板,配好截图/POC
    ↓
⑥ 提交等待 → 通常1-3个工作日审核
    ↓
⑦ 奖金到账 → 平台打款(支付宝/微信/银行卡)

报告编写模板(直接复制用)

【漏洞标题】[目标名称] 越权漏洞(如:越权删除任意用户数据)

【漏洞URL】
https://example.com/api/user/delete

【漏洞描述】
在XXX功能模块,未对操作者的权限进行校验,导致普通用户可越权操作其他用户的数据。

【复现步骤】
1. 登录普通用户A,抓包记录正常请求
2. 修改请求中的user_id参数为其他用户的ID
3. 重放请求,发现操作成功,证明越权存在

【请求包截图】
[粘贴Burp截取的请求包]

【响应包截图】
[粘贴响应包,证明操作成功]

【危害证明】
可删除/修改任意用户数据,造成严重数据泄露和业务影响。

【修复建议】
1. 服务端对操作者身份进行严格校验
2. 使用服务端session,不依赖前端传参
3. 增加权限中间件,统一处理鉴权逻辑

新手掘金路线图

时间投入 可达成目标 预期月收入
每天1小时,持续1个月 掌握OWASP Top 10,能挖低危漏洞 500-2000元
每天2小时,持续3个月 熟练挖掘越权/信息泄露,中危稳定产出 2000-8000元
每天3小时,持续6个月 能挖高危RCE/逻辑漏洞,成为平台常客 8000-30000元

⚠️ 技能边界与局限性(必读)

明确技能能做什么、不能做什么,避免产生不切实际的预期。

本技能能帮你做什么

能力 说明 示例
系统学习 从法律基础到就业面试的完整学习路径 零基础 → 15个阶段 → 具备SRC挖洞能力
实战掘金 指导在SRC平台挖漏洞并获取奖金 告诉你挖什么、去哪挖、怎么写报告
工具使用 提供可直接运行的Python脚本 端口扫描、目录爆破、子域名枚举等
环境搭建 指导搭建靶场和渗透测试环境 DVWA、Pikachu、Vulhub一键部署
排错支持 遇到问题有详细的排查方案 万能排错流程 + 脚本独立FAQ + 环境自检

本技能不能做什么(局限性)

不能做的事 原因 替代方案
自动挖漏洞 挖洞需要人工分析每个目标的业务逻辑 本技能提供方法论和工具,仍需你手动测试
绕过所有WAF WAF规则随时更新,没有通用绕过方案 本技能教思路,具体绕过需根据目标调整
保证一定能挖到漏洞 漏洞存在与否取决于目标系统的安全状况 坚持系统化测试,提高发现概率
代替合法授权 任何测试必须获得目标授权 只在SRC平台资产列表或自有系统上测试
提供最新0day漏洞 0day具有时效性,且涉及法律风险 本技能教挖洞方法,让你自己发现漏洞
保证奖金数额 奖金由平台根据漏洞危害评估决定 按本技能的方法论提高报告质量,间接提升奖金
一键生成高质量报告 报告需要针对具体漏洞写详细复现步骤 本技能提供报告模板,需你填入具体内容

适合谁 / 不适合谁

✅ 适合:

  • 零基础想学网络安全的人
  • 有基础想在SRC平台掘金的人
  • 准备CTF比赛或安全面试的人
  • 想了解Web安全漏洞原理的人

❌ 不适合:

  • 想找"一键赚钱"捷径的人(没有这种东西)
  • 想找0day漏洞库的人(本技能不收集漏洞)
  • 想攻击未授权目标的人(违法,本技能不提供任何支持)
  • 完全不想动手只想听理论的人(本技能强调实战和动手)

📦 配套工具箱(开箱即用)

本技能提供 6 个可直接运行的Python脚本 和 1 个配套字典文件。下载解压后,无需任何额外准备即可运行。

代码质量与稳定性保障

所有脚本均经过以下设计,确保运行时稳定可靠:

设计特性 说明 受益
异常捕获 每个关键操作都有 try/except/finally 不会因为单个错误导致整个程序崩溃
超时控制 网络请求均设置超时(1-5秒) 不会因为网络慢而卡死
多线程安全 queue.Queue + threading.Lock 并发执行不出错
资源释放 sock.close()、queue.task_done() 在 finally 中执行 不会内存泄漏或线程阻塞
优雅降级 模块缺失时给出明确提示,不直接报错退出 用户知道缺什么、怎么装

脚本总览

脚本 功能 依赖 代码行数
scripts/check_env.py 环境诊断(Python版本/模块/网络/权限) 纯标准库 ~120行
scripts/port_scanner.py TCP端口扫描(多线程+服务识别) 纯标准库 ~130行
scripts/dir_bruteforce.py Web目录/文件爆破(多线程+状态码过滤) requests ~140行
scripts/subdomain_enum.py 子域名枚举(多线程+DNS超时控制) dnspython ~120行
scripts/xss_scanner.py 反射型XSS检测(Payload自动注入+响应分析) requests ~100行
scripts/sql_injection_tester.py SQL注入检测(GET/POST+错误关键词匹配) requests ~120行
scripts/wordlist.txt 目录爆破字典(100+常见路径) — 100+条

1. check_env.py — 环境自检诊断

功能:自动检测Python环境、模块依赖、网络连通性、文件完整性。

核心代码(精简展示异常处理设计):

import sys, subprocess, socket, os

def check_python():
    """检测Python版本"""
    version = sys.version_info
    if version.major >= 3 and version.minor >= 8:
        return True, f"Python {version.major}.{version.minor}.{version.micro} (>= 3.8)"
    return False, f"Python {version.major}.{version.minor} (需要 >= 3.8)"

def check_modules():
    """检测必要模块"""
    required = ['socket', 'threading', 'queue', 'urllib']
    missing = []
    for mod in required:
        try:
            __import__(mod)
        except ImportError:
            missing.append(mod)
    return len(missing) == 0, missing

def check_network():
    """检测网络连通性"""
    try:
        socket.create_connection(("www.baidu.com", 80), timeout=3)
        return True, "网络通畅"
    except Exception as e:
        return False, str(e)

# 运行后输出彩色诊断报告,标记[OK]/[WARN]/[FAIL]

用法:

python scripts/check_env.py

预期输出:

[OK] Python版本: 3.12.1 (>= 3.8)
[OK] 必要模块: 全部已安装
[OK] 推荐模块: requests已安装
[OK] 网络连通性: 正常
[OK] 脚本文件完整性: 6/6 文件存在
========================================
诊断结果: 环境正常,可以开始使用

2. port_scanner.py — TCP端口扫描器

功能:多线程TCP端口扫描,自动识别服务类型。

核心代码(展示异常处理+超时控制):

import socket, threading, queue

port_queue = queue.Queue()
results = []

def port_scan(target, port, timeout=1):
    """扫描单个端口,异常不崩溃"""
    try:
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.settimeout(timeout)           # 超时控制
        result = sock.connect_ex((target, port))
        if result == 0:
            try:
                service = socket.getservbyport(port, 'tcp')
            except:
                service = 'unknown'
            results.append((port, 'OPEN', service))
            print(f"[+] 端口 {port} 开放 ({service})")
        sock.close()
    except socket.timeout:
        pass                                # 超时=端口关闭,不报错
    except Exception:
        pass                                # 任何异常都不崩溃

def worker(target):
    """多线程工作函数,异常安全"""
    while not port_queue.empty():
        try:
            port = port_queue.get_nowait()
        except queue.Empty:
            break
        try:
            port_scan(target, port)
        except Exception:
            pass
        finally:
            port_queue.task_done()          # 确保队列计数正确

# 主函数:自动解析域名→创建50线程→join等待→输出结果

用法:

python scripts/port_scanner.py 127.0.0.1 1 1000

预期输出:

============================================================
端口扫描器
目标: 127.0.0.1
端口范围: 1 - 1000
线程数: 50
============================================================

[+] 端口 80   开放 (http)
[+] 端口 443  开放 (https)
[+] 端口 3306 开放 (mysql)

============================================================
扫描完成
开放端口数: 3
============================================================

3. dir_bruteforce.py — Web目录爆破器

功能:多线程目录/文件爆破,内置User-Agent,支持扩展名扫描。

核心代码(展示异常处理+队列安全):

import requests, threading, queue

result_queue = queue.Queue()
found_paths = []
lock = threading.Lock()

def check_path(base_url, path):
    """检查单个路径,超时3秒"""
    url = base_url.rstrip('/') + '/' + path.lstrip('/')
    try:
        headers = {'User-Agent': 'Mozilla/5.0'}
        r = requests.get(url, headers=headers, timeout=3, allow_redirects=False)
        if r.status_code in [200, 301, 302, 403, 401]:
            return (url, r.status_code)
    except requests.Timeout:
        pass                                # 超时跳过
    except requests.ConnectionError:
        pass                                # 连接失败跳过
    except Exception:
        pass                                # 其他异常不崩溃
    return None

def worker(base_url):
    """工作线程,异常安全+队列计数保护"""
    while not result_queue.empty():
        try:
            path = result_queue.get_nowait()
        except queue.Empty:
            break
        try:
            result = check_path(base_url, path)
            if result:
                with lock:                  # 线程锁保护共享数据
                    found_paths.append(result)
                    print(f"[+] [{result[1]}] {result[0]}")
        except Exception:
            pass
        finally:
            result_queue.task_done()        # finally确保计数正确

用法:

python scripts/dir_bruteforce.py http://your-target.com scripts/wordlist.txt

预期输出:

[+] [200] http://your-target.com/robots.txt
[+] [301] http://your-target.com/admin
[+] [403] http://your-target.com/api/
[+] [200] http://your-target.com/.env
目录爆破完成,发现 4 个有效路径

4. subdomain_enum.py — 子域名枚举器

功能:多线程子域名枚举,DNS查询超时控制,进度实时输出。

核心代码(展示DNS异常处理+多线程):

import dns.resolver, threading, queue

sub_queue = queue.Queue()
found_subdomains = []
lock = threading.Lock()

def check_subdomain(domain):
    """查询子域名DNS记录,超时3秒"""
    try:
        resolver = dns.resolver.Resolver()
        resolver.timeout = 3               # DNS查询超时
        resolver.lifetime = 5              # 总生命周期
        answers = resolver.resolve(domain, 'A')
        ips = [str(rdata) for rdata in answers]
        return True, ips
    except dns.resolver.NXDOMAIN:
        return False, None                 # 不存在,正常结果
    except dns.resolver.Timeout:
        return False, None                 # 超时,不报错
    except Exception:
        return False, None                 # 其他异常不崩溃

def worker(base_domain):
    """多线程工作函数"""
    while not sub_queue.empty():
        try:
            sub = sub_queue.get_nowait()
        except queue.Empty:
            break
        domain = f"{sub}.{base_domain}"
        try:
            exists, ips = check_subdomain(domain)
            if exists:
                with lock:
                    found_subdomains.append((domain, ips))
                    print(f"[+] {domain} -> {', '.join(ips)}")
        except Exception:
            pass
        finally:
            sub_queue.task_done()

用法:

python scripts/subdomain_enum.py example.com

预期输出:

[+] www.example.com -> 93.184.216.34
[+] mail.example.com -> 93.184.216.35
[+] api.example.com -> 93.184.216.36
子域名枚举完成,发现 3 个有效子域名

5. xss_scanner.py — 反射型XSS检测器

功能:自动注入XSS Payload,检测响应中是否未过滤地反射。

核心代码(展示Payload注入+编码检测):

import requests, urllib.parse

XSS_PAYLOADS = [
    '',
    '">',
    "'>",
]

def test_xss(url, param):
    """测试单个参数是否反射XSS Payload"""
    for payload in XSS_PAYLOADS:
        test_url = url.replace(f"{param}=", f"{param}={urllib.parse.quote(payload)}")
        try:
            r = requests.get(test_url, timeout=5, headers={
                'User-Agent': 'Mozilla/5.0'
            })
            if payload in r.text:
                # 检查是否被HTML编码(如 <script>)
                encoded = payload.replace('<', '<').replace('>', '>')
                if encoded not in r.text:
                    return True, payload        # 未编码反射 = 可能存在XSS
        except requests.Timeout:
            pass
        except requests.ConnectionError:
            pass
        except Exception:
            pass
    return False, None

用法:

python scripts/xss_scanner.py "http://your-target.com/search?q=test" q

预期输出:

[*] 测试URL: http://your-target.com/search?q=test
[*] 参数: q
[+] 发现潜在XSS漏洞!
    Payload: 
    测试URL: http://your-target.com/search?q=%3Cscript%3Ealert(1)%3C/script%3E
    说明: Payload在响应中未编码反射

6. sql_injection_tester.py — SQL注入检测器

功能:GET/POST参数SQL注入测试,基于错误关键词和响应差异检测。

核心代码(展示错误匹配+异常细分):

import requests, urllib.parse, sys

SQL_PAYLOADS = [
    ("'", "单引号测试"),
    ("' OR '1'='1", "逻辑测试"),
    ("' UNION SELECT 1,2,3-- ", "UNION测试"),
]

ERROR_KEYWORDS = ['sql', 'syntax', 'mysql', 'sqlite', 'postgresql',
                  'ora-', 'error', 'warning']

def test_sql_injection(url, param, method='GET'):
    """测试SQL注入,细分异常类型"""
    for payload, desc in SQL_PAYLOADS:
        try:
            if method == 'GET':
                test_url = url.replace(f"{param}=", f"{param}={urllib.parse.quote(payload)}")
                r = requests.get(test_url, timeout=5)
            else:
                data = {param: payload}
                r = requests.post(url, data=data, timeout=5)
            
            response_text = r.text.lower()
            for keyword in ERROR_KEYWORDS:
                if keyword in response_text:
                    return True, payload, f"检测到错误关键词: {keyword}"
        except requests.Timeout:
            continue                            # 超时换下一个Payload
        except requests.ConnectionError:
            continue                            # 连接失败换下一个
        except requests.RequestException:
            continue                            # 其他请求异常跳过
        except Exception:
            continue                            # 任何异常不崩溃
    return False, None, None

用法:

# GET请求
python scripts/sql_injection_tester.py "http://your-target.com/page?id=1" id

# POST请求
python scripts/sql_injection_tester.py "http://your-target.com/login" username POST

预期输出:

[*] 测试URL: http://your-target.com/page?id=1
[*] 参数: id (GET)
[+] 发现SQL注入漏洞!
    Payload: ' OR '1'='1
    检测方式: 检测到错误关键词: mysql
    测试URL: http://your-target.com/page?id=%27+OR+%271%27%3D%271

配套字典文件 wordlist.txt

scripts/wordlist.txt 包含 100+ 条 开箱即用的路径:

admin
login
api
robots.txt
.env
config.php
backup
.git
.svn
swagger
phpmyadmin
redis
... (共100+条)

分类覆盖:

  • 后台入口:admin、login、dashboard、manage
  • 配置文件:robots.txt、.env、config.php、.htaccess
  • 备份文件:backup、db.sql、dump、*.bak
  • 源码泄露:.git、.svn、.idea、.DS_Store
  • API文档:swagger、openapi、graphql、api-docs
  • 数据库工具:phpmyadmin、redis、mongo、elasticsearch
  • 调试监控:phpinfo、actuator、debug
  • 上传目录:upload、files、images、attachment

自定义:用文本编辑器打开,每行一个路径,保存后直接运行目录爆破脚本。

用法:

python scripts/dir_bruteforce.py http://your-target.com scripts/wordlist.txt

🆘 遇到问题怎么办(全局排错速查)

本章节解决核心问题:"内容不对会怎么样、该怎么调整、文档没覆盖的问题怎么处理"。

第一步:运行环境自检(90%问题自动定位)

无论遇到什么问题,先运行:

python scripts/check_env.py

这个脚本会自动检测并告诉你:

  • Python版本是否满足要求
  • 哪些模块缺失、怎么安装
  • 网络是否通畅
  • 脚本文件是否完整
  • 权限是否有问题

根据诊断报告中的 [FAIL] 和 [WARN] 项逐一修复即可。

第二步:万能排错流程(任何未知问题)

如果运行了 check_env.py 仍无法解决,或者遇到文档没提到的问题,按以下流程排查:

┌─────────────────────────────────────────────────────┐
│  万能排错流程(适用于任何脚本/环境/报错问题)         │
├─────────────────────────────────────────────────────┤
│  1. 读报错信息 → 看最后一行错误提示是什么             │
│  2. 复制错误 → 粘贴到搜索引擎(百度/谷歌)查找        │
│  3. 检查环境 → 运行 python scripts/check_env.py       │
│  4. 检查依赖 → pip install -r requirements.txt        │
│  5. 简化测试 → 用最简单的命令/参数先跑通              │
│  6. 换环境试 → 换Python版本、换操作系统、换网络       │
│  7. 查看日志 → 脚本输出文件或系统日志                 │
│  8. 隔离变量 → 一次只改一个条件,定位问题根源         │
└─────────────────────────────────────────────────────┘

排查口诀:一读二搜三检查,四装五简六换七看八隔离。

第三步:常见问题速查表

问题 原因 解决方案
某个知识点看不懂 前置知识缺失 回到前一阶段补基础,不要硬啃
环境搭建失败 版本/依赖问题 看下方「环境搭建速查」,或搜错误信息
脚本运行报错 Python版本/模块缺失 python --version 确认版本,缺模块用 pip install xxx
不知道下一步做什么 没有目标感 回到掘金指南,按「快速掘金路线」走
学了很久没成果 方法不对 切换到「掘金模式」,先挖一个漏洞建立信心

第四步:脚本独立FAQ(每个脚本的专属问题)

port_scanner.py(端口扫描器)

问题 原因 解决方案
所有端口都显示开放 目标不可达或防火墙全放行 先用 ping 测试目标是否可达
扫描速度极慢 单线程或超时太长 增加线程数参数,或减小扫描范围
socket.gaierror 域名解析失败 检查DNS设置,或直接用IP地址
扫描结果为空 目标确实没有开放端口,或被防火墙拦截 尝试扫描本地 127.0.0.1 验证脚本正常

dir_bruteforce.py(目录爆破)

问题 原因 解决方案
FileNotFoundError 字典文件路径不对 确认字典文件存在,用绝对路径
全部404但网站能访问 User-Agent被拦截 脚本已内置UA,如仍被拦截加 --header
结果太多(大量200/301) 目标返回软404 用 -s 参数过滤状态码,或手动检查
requests 模块不存在 未安装requests pip install requests

subdomain_enum.py(子域名枚举)

问题 原因 解决方案
ModuleNotFoundError: No module named 'dns' 未安装dnspython pip install dnspython
找不到任何子域名 目标确实没有常见子域名 这是正常结果,说明目标暴露面小
枚举速度很慢 DNS查询有延迟 这是正常的,几百个子域名需要几分钟

sql_injection_tester.py(SQL注入检测)

问题 原因 解决方案
提示"URL没有参数" 传入的URL不带查询参数 提供带 ?id=1 这种参数的URL
全部没发现注入 目标有WAF或确实没有注入 尝试手动测试 ' OR '1'='1 验证
误报(没有注入但报有) 错误关键词匹配太宽泛 手动访问测试URL确认

xss_scanner.py(XSS扫描器)

问题 原因 解决方案
提示"URL没有参数" 反射型XSS需要URL参数 提供带 ?q=test 这种参数的URL
没发现XSS但手动能触发 可能是DOM型XSS 本脚本只检测反射型XSS
误报(payload在响应中但没执行) 可能被转义或编码 手动在浏览器中访问测试URL验证

第五步:如果以上都不行(兜底方案)

如果以上所有方法都无法解决你的问题:

  1. 记录问题:截图或复制完整的报错信息
  2. 记录环境:运行 python scripts/check_env.py 保存输出
  3. 搜索解决:用报错关键词搜索(90%的问题网上已有答案)
  4. 换个角度:尝试用不同的工具或方法达到同样目的
  5. 跳过继续:如果是某个具体工具的问题,先跳过它,学其他内容,回头再解决

💡 记住:网络安全学习中遇到问题是正常的。每个报错都是学习机会。记录问题、搜索解决、下次就会了。

环境搭建失败了?

看下方「环境搭建速查」章节,包含Kali安装、靶场搭建、Python环境配置。

法律边界不清楚?

绝对不能做的(会违法):

  • ❌ 扫描/测试未授权的目标
  • ❌ 在真实业务系统上执行攻击
  • ❌ 传播/出售攻击工具和漏洞利用代码
  • ❌ 获取数据后泄露或出售

可以安全做的:

  • ✅ 在SRC平台列出的资产范围内测试
  • ✅ 使用DVWA/Pikachu/vulhub等授权靶场
  • ✅ 测试自己拥有的系统
  • ✅ 参加CTF竞赛

🛠️ 环境搭建速查

Python环境配置

# Windows 安装Python 3.x
# 1. 官网下载: python.org/downloads
# 2. 安装时勾选 "Add Python to PATH"
# 3. 验证安装
python --version
pip --version

# 安装常用模块
pip install requests beautifulsoup4 lxml python-nmap paramiko

Kali Linux 安装(Windows子系统WSL)

# 启用WSL
wsl --install
# 安装Kali
wsl --install -d kali-linux
# 进入Kali
wsl -d kali-linux
# 更新系统
sudo apt update && sudo apt upgrade -y

Burp Suite 安装

1. 下载: portswigger.net/burp/communitydownload
2. 安装Java JDK 11+
3. 启动Burp,配置浏览器代理: 127.0.0.1:8080
4. 安装CA证书(抓HTTPS必须)

靶场环境搭建

DVWA(Web漏洞靶场):

# 用Docker一键启动
docker run -d -p 80:80 vulnerables/web-dvwa
# 访问 http://localhost,默认账号 admin/password

Pikachu(中文漏洞靶场):

# GitHub下载
https://github.com/zhuifengshaonianhanlu/pikachu
# 按README配置PHP+MySQL环境

Vulhub(漏洞复现环境):

git clone https://github.com/vulhub/vulhub.git
cd vulhub/struts2/s2-045  # 以Struts2为例
docker-compose up -d

脚本无法运行?

# PowerShell执行策略限制?执行这条解除限制
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser

# 脚本路径含中文报错?
# 把脚本复制到英文路径(如 C:tools)再运行

学习路径总览

学完能挖:越权/信息泄露(低危→中危)
            ↓
阶段1: 法律基础 → 阶段2: 计算机基础 → 阶段3: Python编程
       ↓                                    ↓
  🎯新手禁止动手                          🎯写自动化挖洞脚本
            ↓
阶段4: Kali Linux → 阶段5: Metasploit → 阶段6: Web安全
       ↓                                    ↓
  🎯工具扫描拿低危漏洞                   🎯SQL注入/XSS拿中高危漏洞
            ↓
阶段7: 渗透测试 → 阶段8: 靶场练手 → 阶段9: 护网攻防
       ↓                                    ↓
  🎯完整渗透拿高危                      🎯练手后去SRC实战
            ↓
阶段10: CTF竞赛 → 阶段11: 漏洞挖掘 → 阶段12: 内网渗透
       ↓                                    ↓
  🎯练手技巧                            🎯SRC持续掘金
            ↓
阶段13: 企业安全 → 阶段14: 云安全 → 阶段15: 面试就业
       ↓
  🎯进阶高薪岗位

💡 快速掘金路线:如果你已经有基础,直接跳到阶段6(Web安全)→ 阶段11(漏洞挖掘),这两个阶段是掘金核心。

阶段1: 刑法与网络安全法

学习目标

建立合法合规的网络安全学习框架,明确红线边界。

核心内容

《中华人民共和国网络安全法》要点:

  • 第27条:禁止非法侵入他人网络、干扰他人网络正常功能
  • 第28条:禁止提供专门用于侵入、非法控制网络的程序、工具
  • 第63条:个人违法责任(行政拘留、罚款)
  • 第64条:从重处罚情形

《刑法》相关条款:

  • 第285条:非法侵入计算机信息系统罪
  • 第285条第2款:非法获取计算机信息系统数据罪
  • 第285条第3款:提供侵入、非法控制计算机信息系统程序、工具罪
  • 第286条:破坏计算机信息系统罪

合法学习边界:

  • ✅ 自有系统测试
  • ✅ 授权靶场练习(DVWA、Pikachu、vulhub)
  • ✅ 漏洞平台提交(教育漏洞、公益漏洞、企业SRC)
  • ✅ CTF竞赛
  • ❌ 未授权扫描/入侵
  • ❌ 传播攻击工具
  • ❌ 泄露敏感数据

🎯 实战掘金

本阶段禁止动手挖漏洞! 先懂法才能安全掘金。

学完本章你能:

  • ✅ 明确合法边界,避免踩红线
  • ✅ 知道哪些平台可以提交漏洞(CNVD、企业SRC)
  • ✅ 了解提交漏洞的正确流程,避免法律风险

掘金准备清单(学完阶段1可以做):

  1. 注册腾讯TSRC账号(security.tencent.com)
  2. 仔细阅读平台的《漏洞提交规范》和《奖励规则》
  3. 了解哪些漏洞类型平台接受、哪些不接受
  4. 记住:只测试平台列出的资产范围内的目标

⚠️ 警告:未授权测试 = 违法。只在SRC平台授权范围内测试!

⚠️ 常见问题与排错

问题 解答
测试朋友网站算违法吗? 只要对方明确授权就不违法,口头同意也算,但最好有书面/聊天记录
CTF比赛中的攻击算违法吗? 不算,CTF是授权环境,但比赛结束后不能继续攻击
在SRC平台挖漏洞会被起诉吗? 不会,只要按平台规则提交,平台会保护白帽子
发现漏洞但没提交,自己留着算违法吗? 不算违法,但如果利用漏洞做坏事就算
扫描公网IP算违法吗? 灰色地带,建议只扫描SRC平台列出的资产

法律边界速查:

✅ 安全的:自有系统测试、授权靶场、SRC平台、CTF竞赛
⚠️ 灰色:公网端口扫描(一般不追究,但不建议)
❌ 违法的:未授权入侵、数据窃取、工具传播、勒索攻击

学习资源

  • 参考文件:references/01_legal_basics.md(详细法律条文与案例分析)

阶段2: 计算机基础

学习目标

掌握计算机网络、操作系统、数据库的核心原理。

2.1 计算机网络

OSI七层模型与TCP/IP四层模型:

应用层 (HTTP/HTTPS/DNS/DHCP)
传输层 (TCP/UDP)
网络层 (IP/ICMP/ARP)
网络接口层 (Ethernet/VLAN)

核心协议深度理解:

  • TCP三次握手/四次挥手
  • HTTP/HTTPS请求响应流程
  • DNS解析过程
  • ARP协议与ARP欺骗原理

网络设备:

  • 路由器、交换机、防火墙工作原理
  • 子网划分与CIDR
  • 常见端口与服务(21/FTP, 22/SSH, 80/HTTP, 443/HTTPS, 3306/MySQL)

2.2 操作系统

Linux基础(重点):

# 文件权限
chmod 755 file.sh
chown user:group file.txt

# 进程管理
ps aux | grep process
kill -9 PID
top / htop

# 网络排查
netstat -tulnp
ss -tulnp
tcpdump -i eth0 port 80

# 日志分析
tail -f /var/log/auth.log
grep "Failed" /var/log/secure

Windows基础:

  • 注册表结构
  • 服务管理(services.msc)
  • 组策略(gpedit.msc)
  • PowerShell基础

2.3 数据库

SQL语言核心:

-- 查询
SELECT * FROM users WHERE id=1;

-- 注入点测试
SELECT * FROM users WHERE username='admin' AND password='' OR '1'='1';

-- 联合查询
SELECT * FROM users UNION SELECT 1,2,3;

常见数据库:

  • MySQL/MariaDB
  • PostgreSQL
  • SQL Server
  • Redis(NoSQL)

🎯 实战掘金

学完本章你可以:

  • 理解Web应用的网络结构,找到攻击面
  • 识别目标使用了什么数据库(影响注入方式)
  • 理解HTTP请求流程(对挖XSS、CSRF、越权至关重要)

掘金相关知识点:

知识点 → 能挖的漏洞
─────────────────────────────
HTTP请求/响应流程 → XSS、CSRF、越权
HTTP头部结构 → Host头注入、CRLF注入
Cookie/Session机制 → 会话固定、越权
SQL语法 → SQL注入(最主要掘金手段)
Linux命令 → 日志分析、后渗透
端口与服务 → 信息泄露(开放不必要的端口)

现阶段可以做的掘金准备:

  1. 安装Burp Suite(抓包改包工具,掘金必备)
  2. 学会看HTTP请求/响应头
  3. 理解Cookie和Session的区别

学习资源

  • 参考文件:references/02_computer_basics.md(详细命令与实验)

阶段3: Python编程

学习目标

掌握Python基础语法,能够编写爬虫和端口扫描脚本。

3.1 Python基础语法

核心语法:

# 变量与数据类型
name = "Alice"
age = 25
skills = ["Python", "Linux", "Web安全"]

# 控制流
if port == 80:
    print("HTTP服务")
elif port == 443:
    print("HTTPS服务")
else:
    print("其他服务")

# 函数
def port_scan(target, port):
    # 端口扫描逻辑
    pass

3.2 爬虫编写

Requests + BeautifulSoup 示例:

import requests
from bs4 import BeautifulSoup

url = "http://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')

# 提取所有链接
links = soup.find_all('a')
for link in links:
    print(link.get('href'))

Scrapy框架基础:

import scrapy

class MySpider(scrapy.Spider):
    name = 'myspider'
    start_urls = ['http://example.com']

    def parse(self, response):
        yield {
            'title': response.css('h1::text').get(),
            'link': response.url
        }

3.3 端口扫描脚本

Socket端口扫描器:

import socket
import threading
from queue import Queue

def port_scan(target, port):
    try:
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.settimeout(1)
        result = sock.connect_ex((target, port))
        if result == 0:
            print(f"[+] 端口 {port} 开放")
        sock.close()
    except:
        pass

def scan_ports(target, start_port, end_port):
    for port in range(start_port, end_port + 1):
        t = threading.Thread(target=port_scan, args=(target, port))
        t.start()

# 使用
scan_ports("192.168.1.1", 1, 1024)

使用Nmap库:

import nmap

nm = nmap.PortScanner()
nm.scan('192.168.1.0/24', '22-443')
for host in nm.all_hosts():
    print(f"主机: {host}, 状态: {nm[host].state()}")

🎯 实战掘金

学完本章你可以编写自动化挖洞脚本,批量扫描目标!

掘金脚本方向:

脚本类型 能挖的漏洞 预计产出
子域名枚举脚本 发现更多攻击面 低危信息泄露
端口扫描脚本 发现开放的不必要服务 低危信息泄露
目录爆破脚本 发现后台/敏感路径 低危信息泄露
SQL注入检测脚本 批量检测注入点 中危→高危
XSS检测脚本 批量检测XSS点 低危→中危

实战:编写你的第一个掘金脚本

# dir_bruteforce.py - 目录爆破(已包含在scripts/中)
# 用法:python dir_bruteforce.py https://target.com wordlist.txt

# 这个脚本可以帮你快速发现:
# - 后台登录页(/admin、/manager)
# - 敏感文件(/robots.txt、/sitemap.xml)
# - 备份文件(/backup、/db.sql)
# 这些都是低危漏洞,但累积起来也是收入!

现阶段掘金行动:

  1. 用Python写一个子域名枚举脚本(发现SRC平台的边缘资产)
  2. 用Python写一个目录爆破脚本(跑SRC目标的敏感路径)
  3. 把发现的有价值路径整理成报告提交

💡 掘金技巧:很多SRC的高危漏洞,都是从「目录爆破发现敏感路径」开始的!

⚠️ 常见问题与排错

问题 原因 解决方案
ModuleNotFoundError: No module named 'requests' 模块未安装 pip install requests
SyntaxError 语法错误 缩进或括号不匹配 检查缩进(4个空格),检查括号闭合
脚本运行无结果 目标不可达或被防火墙拦截 ping target_ip 测试连通性
端口扫描太慢 单线程 用多线程或Nmap库:pip install python-nmap
Python版本太旧 安装了Python 2.x 重新安装Python 3.8+,确认 python --version

脚本调试技巧:

# 加打印语句定位问题
print(f"正在扫描: {target}:{port}")

# 用try-except捕获异常
try:
    response = requests.get(url, timeout=5)
except Exception as e:
    print(f"请求失败: {e}")

学习资源

  • 参考文件:references/03_python_practice.md(完整代码示例)
  • 脚本:scripts/port_scanner.py(端口扫描脚本模板)
  • 脚本:scripts/dir_bruteforce.py(目录爆破脚本模板)
  • 配套文件:scripts/wordlist.txt(目录爆破字典,开箱即用)
  • 脚本:scripts/xss_scanner.py(XSS漏洞扫描器)
  • 脚本:scripts/sql_injection_tester.py(SQL注入检测器)
  • 脚本:scripts/subdomain_enum.py(子域名枚举器)
  • 脚本:scripts/check_env.py(环境自检,运行前先检测)

阶段4: Kali Linux

学习目标

掌握Kali Linux安装配置,熟悉常用工具。

4.1 系统安装

虚拟机安装(推荐):

  • VMware Workstation / VirtualBox
  • 分配资源:内存4GB+,硬盘50GB+,网络桥接/NAT
  • 下载官方ISO:https://www.kali.org/get-kali/

WSL2安装(Windows):

wsl --install -d Kali-Linux

4.2 环境配置

基础配置:

# 更新系统
sudo apt update && sudo apt full-upgrade -y

# 安装常用工具
sudo apt install -y vim net-tools nmap masscan gobuster

# 配置静态IP(根据需要)
sudo nano /etc/network/interfaces

权限管理:

# 添加普通用户
sudo adduser hacker
sudo usermod -aG sudo hacker

# 禁用root远程登录
sudo passwd -l root

4.3 常用工具分类

信息收集:

  • Nmap:端口扫描
目录

热门AI工具

更多
Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

0

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

0

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

0

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

0

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

0

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

0

2026.10.22

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

0

2026.10.22

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

0

2026.10.22

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

0

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn