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

常德网站建设哪家权威工信部网站登陆

常德网站建设哪家权威,工信部网站登陆,被国家禁止访问的网站怎么打开,关于旅游电子商务网站建设论文第一步 先checksec一下(没有启用NX保护、PIE、完整的RELRO和栈保护,还有具有RWX权限的内存段。) 分析一下这个文件的保护机制: Arch: amd64-64-little 这表示该可执行文件是为64位的AMD64架构编译的,并且使用的是小…

第一步    先checksec一下(没有启用NX保护、PIE、完整的RELRO和栈保护,还有具有RWX权限的内存段。)

分析一下这个文件的保护机制:

  1. Arch: amd64-64-little
    • 这表示该可执行文件是为64位的AMD64架构编译的,并且使用的是小端字节序(little-endian)。
  2. RELRO: Partial RELRO
    • RELRO(Relocation Read-Only)是一种安全特性,旨在减少攻击者修改程序运行时的全局偏移表(GOT)的能力。有两种RELRO设置:
      • Full RELRO:将GOT置于只读段,从而在程序启动时就完全确定,并且在运行时不可更改。
      • Partial RELRO:只将部分GOT置于只读段,这意味着攻击者可能仍然有能力在运行时修改GOT,尽管这比没有任何RELRO保护要困难。
    • Partial RELRO表示该程序没有实现完全的RELRO保护,因此存在一定的风险。
  3. Stack: No canary found
    • 栈保护可以通过栈溢出保护(Stack Smashing Protector,SSP)实现,通常使用一个称为“canary”的随机值来检测栈溢出。如果攻击者试图通过栈溢出覆盖返回地址,canary值会被改变,程序可以检测到这种改变并终止。
    • No canary found表示该程序没有启用栈保护,这使得它更容易受到栈溢出攻击。
  4. NX: NX disabled
    • NX(No-eXecute)是一种硬件支持的功能,它将内存区域标记为不可执行,从而防止了在数据段(如堆栈或堆)中执行代码。
    • NX disabled表示该程序没有启用NX保护,这允许攻击者在程序的堆栈或堆上执行代码,增加了受到攻击的风险。
  5. PIE: No PIE (0x400000)
    • PIE(Position-Independent Executable)是一种安全特性,它使得程序的代码可以在内存中的任意位置加载,这样每次程序运行时地址空间布局都是随机的,增加了利用内存损坏漏洞的难度。
    • No PIE表示该程序不是位置独立的,它总是在固定的地址(在这个例子中是0x400000)加载,这使得利用某些类型的漏洞更容易。
  6. RWX: Has RWX segments
    • RWX表示内存段同时具有读(Read)、写(Write)和执行(eXecute)权限。通常,内存段应该只有读和执行权限,或者只有读和写权限,而不应该同时具有所有三个权限。
    • Has RWX segments表示该程序有内存段同时具有读、写和执行权限,这是不安全的,因为它允许攻击者修改内存中的代码并执行它。

第二步  拖入ida,发现关键字flag,双击后按ctrl + x

 发现该语句在sub_40060D中

进入该函数,该函数就是一个简单的system()函数,这个函数的作用就是输出flag的文件信息

与之前一题相似:触发后门函数sub_40060(),函数地址为0x40060D

第三步  进入该数组

以下是对这两个特殊字段 “r” “s” 的解释:

  • r:代表返回地址(return address)。当一个函数被调用时,调用者的返回地址(即调用指令之后的地址)会被自动推入栈中。这个返回地址在函数执行完毕后用于控制流返回到调用点。
  • s:代表保存的寄存器(saved registers)。在函数开始执行时,如果函数要使用某些寄存器,并且这些寄存器在调用者中之后还需要使用,那么这些寄存器的值需要在栈上保存,以便在函数返回前恢复。

解释一下最后var部分:

  • var_40 db 64 dup(?):这行代码声明了一个名为var_40的局部变量,它是一个字节数组,大小为64字节。db表示声明字节(double byte),64 dup(?)表示重复64次,每次分配一个未初始化的字节(用?表示)。这个数组在栈帧中的位置相对于基指针ebp是偏移量-40的地方(如果ebp指向栈帧的底部),这通常意味着它是函数中的一个局部变量。
  • s db 8 dup(?):这行代码声明了一个名为s的局部变量,它是一个字节数组,大小为8字节。这个数组用于保存寄存器的值,正如之前提到的Saved regs: 8,这通常用于保存两个32位寄存器的值。
  • r db 8 dup(?):这行代码声明了一个名为r的局部变量,它也是一个字节数组,大小为8字节。这个数组用于保存返回地址,尽管在大多数汇编语言中,返回地址是自动保存在栈上的,而不是显式声明一个变量来保存。这里的声明可能是为了示例或说明目的,实际上并不常见。(就我个人理解这个8应该不算在内,要算的的话只算前面那两个32位寄存器的。仅为个人理解,如有错误,请指正。)

如此看的话填充数据大小为64+8(var_40加上两个32位寄存器),72个。

第五步 编写脚本

成功得到flag

http://www.yayakq.cn/news/600318/

相关文章:

  • 棋牌网站建设要多少钱花店网站模板免费下载
  • 余姚电商交易网站建设wordpress导航添加登录退出
  • 有什么网站可以免费权威的唐山网站建设
  • 网站开发流程中有哪几个阶段成都专业网站制作网站
  • 网站开发兼容极速字体颜色推荐当铺网站建设方案
  • 长沙网站优化海南网站建设获客
  • 域名解析 网站建设广州营销网站建设设计
  • 上海做网站就用乐云seo十年企查查企业信用查询官网
  • 全面的seo网站优化排名化妆品网络营销策划书
  • 用dw制作影视网站怎样做优化公司网站
  • 邯郸专业做网站哪里有南沙区交通和建设局网站
  • 网站建设公司友情链接拓客渠道有哪些
  • 做电影网站侵权网站自助制作
  • vps做网站教程静态网页制作视频教程
  • wordpress做分类信息网站家庭装修效果图
  • 换ip对网站有影响吗企业网址查询入口
  • 测词汇量的专业网站福建省建设厅网站投诉
  • 天津做网架公司广东seo网络培训
  • 门户型网站都有哪些企业微网站制作教程
  • 深圳宝安医院的网站建设wordpress图像居中
  • 浦北县住房和城乡建设局网站南京建设教育网站
  • 做系统那个网站好移动网站开发课程设计
  • 怎么做能够让网站流量大官方网站查询叉车证
  • 网站建设中图片联系方式大气门户网站
  • 免费网站推广产品上海娱乐场所关闭
  • 洋气的设计公司名字seo搜索如何优化
  • 网站搜索优化方案如何用易语言做网站
  • 百度网站怎么做视频教程东城免费做网站
  • 自己做网站怎么发布苏州网站建设 凡仕臣网络
  • 企业建设网站的目的是什么网页设计师就业趋势