汇总
前言
此篇文章是因为平时找一些指令要到处翻文章感觉有点麻烦就做了一些知识点的小汇总。
内容包括Linux指令、找ROPgadget指令、64位程序传参寄存器、GDB调试,pwntools单独放在另一篇文章了感兴趣的师傅可以在博客主页翻翻看
Linux常用指令
nc
1 | nc 域名 端口号 |
nc用于连接远程靶机,是Linux中的一个网络工具(还有很多其他用法但不常用就不列举了)
ssh
1 | ssh 用户名@题目地址 -p题目端口号 |
ssh是一种网络协议,用于安全的远程登录到计算机系统
ls
1 | ls |
ls用于列出当前工作目录下的文件或子目录
pwd列目录
1 | pwd |
pwd显示当前工作目录的内容
chown程序提权
1 | chown 777 文件名 |
该指令用于将程序变为可读可写可执行,即改变程序的权限
虚拟机连不上网?
多半是DNS(域名系统)出问题了
一般我习惯吧DNS设置成8.8.8.8(谷歌的公开提供的公共服务器之一)
当虚拟机连不上网,打不开浏览器先尝试ping 8.8.8.8
测试主机之间的连通性(检查网路连接的状态与质量)
网络正常的话是这样
不正常的话用这个
1 | sudo vim /etc/resolv.conf |
以管理员权限用vim修改/etc/resolv.conf这个位置的文件
将127.0.0.53修改为8.8.8.8即可(具体原理还没明白)
更改后重启网络服务
1 | sudo systemctl restart NetworkManager |
vim文本编辑器
a
切换为插入模式
:w
:保存文件
:q
:退出 Vim
:wq
或 ZZ
:保存并退出
:q!
:不保存强制退出
还有很多但是最近只用得到这些就不一一列出了
ROPgadget查找
1 | ROPgadget --binary pwn --only 'pop|ret' | grep 'rdi' #控制寄存器的值 |
对第一条指令详细解释:
ROPgadget --binary pwn --only 'pop|ret'
--binary pwn
:指定要分析的二进制文件为pwn
。--only 'pop|ret'
:只显示包含pop
或ret
指令的 gadget。
| grep 'rdi'
|
:管道符,将前一个命令的输出作为下一个命令的输入。grep 'rdi'
:从上一步的输出中筛选出包含rdi
的行。
64位程序的传参寄存器
1 | 具体64位传参方法如下: |
GDB调试
启动
1 | gdb pwn |
打断点
1 | b function #在指定函数处打断点 |
<待续…>
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.