nmap扫描
主机发现
端口扫描
服务扫描
-sT 说明用tcp协议(三次握手)扫描
-sV扫描版本
O扫描系统
NULL是图片
10000端口是个python服务
UDP扫描
脚本扫描
![](https://i-blog.csdnimg.cn/blog_migrate/953a6419091f3e5a695c1ba72e79dff1.png)
web渗透
目录爆破
显示/bin/目录有东西
gobuster dir -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://192.168.10.202:10000
查看web源码
查看/bin/目录
并下载
用监测nc查看9999端口
拒绝访问,但说明还是有交互的
观测查看文件,看是否是可执行文件,还要考虑安全性如何
查看是否有捆绑
查看字符串
up的图
然后放到win端
识别溢出漏洞
进行连接
输入shistorm
意味着有可能有buffer缓冲区溢出的漏洞
接着尝试
可能是不足以导致溢出,可以尝试应用自动测试程序进行测试
运行
有错误进行更正
100字节就停止了
用工具测算是多少个字节
能生成字符串,长度由自己定,可以定位哪个字节溢出
继续进行修改
sudo vim exploit.
喂字符看哪个报错
下载immunity debugger并且放好mona.py
再导入brainpan.exe
这个界面是汇编语言
EAX累加器,EXC计数,ESP堆栈,EBP计(暂时不知道)指针,
寄存器,名称需要了解
下一步
观测缓冲区溢出的情景,观测运行过程,可以在CPU与程序之间的数据流之中加入自己的东西
再执行代码
遇到这种情况只能重新写代码
重新编辑并运行
看缓存区,特别EIP
应用工具,并输入EIP
35724134字节在偏移 524处往后
继续更改文件
524是溢出的点,后面是EIP的内存地址,4个字节,后面的C有72个
在程序执行之前要重启软件,然后重新打开BRAINPAN
ESP堆栈,在ASCII码中42是B,41是A
Dec是十进制表达,Hex是十六进制表达,能对应到字母
在缓冲区溢出漏洞中找到EIP是很重要的,就可以在EIP后面放反弹shell等信息
一般一个payloud是350-400字节左右,给后面扩容
运行文件时,重启软件,并打开brainpan
在此处结束
计算字节空间,0x是八进制前缀,足够payloud构造
不同程序的坏字符是不一样的,构造payloud要回避
badchar,下载下来
复制测试有哪些是坏字符,进行编辑
运行文件进行软件重启
右击Follow in Dump
所谓的坏字节就是00不连续的
继续编辑文件
x00是用十六进制的1字节
nasm是汇编,汇编工具,查看一下汇编语句语法命令
更改
c*500是寄存器的空间位置是不确定的,要通过前面EIP‘B'*4对应到如下图
eip对溢出漏洞极为重要,它的作用是下一条指令是做什么
重定向到esp堆栈中,接下啦写反弹shell到esp即“c”*500,要在eip('B'*4)这写重定向代码
在汇编语言里就是jmp esp,跳转到esp,直接用的时候要用操作码FFE4,拿到操作码去软件上操作
列出所有的模块,找到哪个程序中可以执行栈的esp的跳转,还要筛选哪个模块满足要求还要进行筛选,用mona modules python写的lmmunity Debugger自动化脚本去执行
注意这几个模块
找有无jmp esp,jmp操作代码FFE4
-m 模块,红色字体提示找到一个指针
地址可以用来重定向
进行文件编辑,写上地址,还要对eip进行编辑进行反写倒序,重定向地址写到了eip上
构造反弹shell,放在c*500
打错字了,wimdows---windows,生成c语言payload
继续编写文件
esp上要写上shellcode
接下来准备执行文件,准备监听
重新运行软件
执行文件,反弹成功
不用管了,继续编写文件,基于内存利用win与linux是通用的
生成c语言payload
继续编写文件
文件复制遗漏\xdd
ip改为靶机ip,准备执行文件,打开监听
获得初始shell
python -c "import pty;pty.spawn('/bin/bash')"提高交互性
是用python生成的简易服务器
sudo -l查看权限
生成bash环境,并提权成功,!是强调
rooted
看第二次完善笔记