默认计划
931人加入学习
(9人评价)
安全测试缓冲区溢出

购买过Kali Linux渗透测试、武官课程包、安全技术会员课程的学员不要再买此课程

价格 ¥ 300.00
该课程属于 高校公益行 | 网络安全实践训练营 请加入后再学习

理想状态 是反弹shell回来

所以 我就要用nc侦听444这个端口

nc -vlp 444

前期可能生出的shellcode 是在结束之后会导致程序的崩溃 但是新版本的shellcode可能做啦优化这一部分 结束之后让下一个线程去接收

打开桌面环境

在此基础上在目标程序性安装图成画的远程客户端在目标机器上得以执行

使用payload的情况下 vnc 可以查看到远程目标桌面环境

最简单 就是rdp 拿到命令行的管理权的时候 如何通过命令行的管理权打开远程桌面服务

windows里面做的大部分配置90% 配置的参数选修是存在注册表里面的 linux 是每一个软件存在配置文件里面

windows 快照抓取的方式找到啦打开远程桌面的注册表的键值

reg是windows注册表文件

dir查看当前目录

重启 

开启防火墙里面的远程服务 通过修改注册表完成

可以通过抓取注册表来确定到底是那个注册表

注册表快照 保存注册表当前快照

[展开全文]

罪恶的根源:变量
    数据与代码边界不清
    最简漏洞原理 —— shell脚本漏洞
当缓冲区边界限制不严格时,由于变量传入畸形数据或程序运行错误,导致缓冲区被“撑
暴”,从而覆盖了相邻内存区域的数据;
    成功修改内存数据,可造成进程劫持,执行恶意代码,获取服务器控制权等后果
如何发现漏洞
• 源码审计
• 逆向工程
• 模糊测试
• 向程序堆栈半随机的数据,根据内存变化判断溢出
• 数据生成器:生成随机、半随机数据
• 测试工具:识别溢出漏洞

[展开全文]

发现缓冲区 漏洞利用获得目标管理权

是针对目标系统某一个软件进行溢出 一旦溢出成功就可以控制目标系统

客户端对服务器端进行连接的过程存在一个socket命令有缓冲区溢出漏洞

大部分溢出漏洞代码python windows工具 是edb

32 是指cpu的地址总线的位数 地址总线32位是最大寻址空间2的32次方 64位 就是2的64次方

32位难度比较简单 空间小 64位有巨大

32位系统 i486的cpu

主要服务器端程序都在bin一下

只要看到客户端等待程序 就好了 或者看到13327这个端口

linux也支持多种内存保护机制 另外 还有堆栈保护机制 防止恶意代码在你的cpu里面执行

服务端程序有缓冲区漏洞 通过网络连接的过程访问到啦

[展开全文]

 通过debug程序直接调用程序来运行

关注eip寄存器地址

[展开全文]

思路: 就是 让eip跳转esp esp里面存放eax偏转12个字符和jmp eax

[展开全文]

准备shellcode之前需要找坏字符

因为操作系统 协议 所以坏字符是不一样的

[展开全文]

操作学习通执行

软件有很多漏洞 有没有很多公开的网站收集和整理已经公开的漏洞网站

发布恶意的漏洞代码 受到攻击 刚刚出来的漏洞

对于非明文的代码一定要注意 尽量吧别人提供的shellcode漏洞利用代码装换成为自己的shellcode

 

[展开全文]

使用类nc得到shell 我们成为非交互shell

p中安装ftp

[展开全文]

windows

 tftp 文件上传基于udp文件协议应用层的文件传输工具

用途 比如说思科os更新升级 可以自己搭建一个tftp服务器 然后吧更新的文件放在tfto里面 然后在思科的交换机里面指定tftp的服务地址 自动下载链接替换现有tftp

tftp 不支持身份验证 明文传输 边境防火墙过滤

windows

whoami查看当前用户的命令

只有所有者的权限是nobady的时候才能被所有者使用 要不然就没有办法值

键盘记录器窃取对方在键盘山之行的命令 拿到机密信息

查看

通过安装脚本快点

[展开全文]

使用VBScript 传输文件

每一种传输方式 最熟悉场景

VBScript木马

还是需要通过echo吧所有的VBScript的代码指令发送到目标vbs里面 通过vbs执行 通过webhttp协议 下载木马程序 vbs 是windows默认的脚本语言 win7 以前最主要 是 现在增加powrshell

ka

win8 win7 使用powershell 简短的语句实现我们达到的目的

powershell 后缀是ps1

 

debug文件传输 操作很常用 朱啊哟是汇编反汇编 16dump 有默认字节 64k字节

过程 有限制 当文件比较大 使用upx进行压缩

[展开全文]

dpkg --add-architecture i386 && apt-get update && apt-get install wine32

——安装i386的wine32

 

i586-mingw32msvc-gcc 646.c -lws2_32 -o sl.exe

——Linux下用gcc编译windowsC程序

[展开全文]

如何发现漏洞

源码审计

逆向工程

模糊测试

  1. 向程序堆栈半随机的数据,根据内存变化判断溢出
  2. 数据生成器:生成随机数据
  3. 测试工具:识别溢出漏洞
[展开全文]

DEP:阻止代码从数据页被执行

ASLR:随机内存地址加载执行程序和DLL,每次重启地址变化

[展开全文]
先用01 脚本测试是否存在缓冲区溢出
eip的作用是吓一跳指令执行的地址
esp是执行的指令

之后用脚本测试缓冲区溢出再第几个字节发生溢出
精准测试
可以用唯一字符串法
二分法
唯一字符串法可以用kali下的
/usr/share/metasploit-framework/tools/exploit
./pattern_create.rb 创建出某长度的唯一字符串
./pattern_offset 可以计算eip的位置
[展开全文]