[INSHack2018]Tricky-Part1
文章目录
- [INSHack2018]Tricky-Part1
- 主要利用交叉引用列表( Jump - Jump to xref 或快捷键X,将光标放在一个交叉引用的目标地址上,通过该快捷键可弹出交叉引用列表。)
- 主要函数分析
- 脚本
[INSHack2018]Tricky-Part1
主要利用交叉引用列表( Jump - Jump to xref 或快捷键X,将光标放在一个交叉引用的目标地址上,通过该快捷键可弹出交叉引用列表。)
主要函数分析
std::string *__fastcall stack_check(std::string *a1)
{unsigned __int64 v1; // rbxunsigned __int64 v2; // rax_BYTE *v3; // raxunsigned __int64 v4; // rbxchar v6; // [rsp+1Bh] [rbp-25h] BYREFint i; // [rsp+1Ch] [rbp-24h]char v8[32]; // [rsp+20h] [rbp-20h] BYREFstd::allocator<char>::allocator(&v6);std::string::string(v8, &unk_4011D8, &v6);std::allocator<char>::~allocator(&v6);for ( i = 0; ; ++i ){v4 = i;if ( v4 >= std::string::size((std::string *)&base) )break;v1 = i;v2 = std::string::size((std::string *)v8); // 这里是v8数组大小4LOBYTE(v1) = *(_BYTE *)std::string::operator[]((__int64)v8, v1 % v2);// 结果v1是取出v8数组元素v3 = (_BYTE *)std::string::operator[]((__int64)&base, i);// v3是取出对应位置的输入结果*v3 ^= v1; // 输入数组和v8进行异或}std::string::string(a1, (const std::string *)&base);std::string::~string(v8);return a1;
}
两个重要数组,一个是v8,另外一个base
unsigned char ida_chars[] =
{71, 68, 66
};
unsigned char ida_chars[] =
{0x0E, 0x0A, 0x11, 0x06, 0x3F, 0x01, 0x1F, 0x1C, 0x1D, 0x76, 0x37, 0x1D, 0x2F, 0x70, 0x30, 0x23, 0x77, 0x30, 0x18, 0x22, 0x72, 0x35, 0x1B, 0x31, 0x33, 0x70, 0x36, 0x76, 0x27, 0x1D, 0x73, 0x2A, 0x76, 0x2B, 0x75, 0x31, 0x3E, 0x37, 0x1D, 0x30, 0x2C, 0x71, 0x29, 0x1B, 0x26, 0x74, 0x26, 0x37, 0x20, 0x23, 0x71, 0x35, 0x1B, 0x24, 0x73, 0x75, 0x2E, 0x34, 0x39
};
脚本
a =[0x0E, 0x0A, 0x11, 0x06, 0x3F, 0x01, 0x1F, 0x1C, 0x1D, 0x76, 0x37, 0x1D, 0x2F, 0x70, 0x30, 0x23, 0x77, 0x30, 0x18, 0x22, 0x72, 0x35, 0x1B, 0x31, 0x33, 0x70, 0x36, 0x76, 0x27, 0x1D, 0x73, 0x2A, 0x76, 0x2B, 0x75, 0x31, 0x3E, 0x37, 0x1D, 0x30, 0x2C, 0x71, 0x29, 0x1B, 0x26, 0x74, 0x26, 0x37, 0x20, 0x23, 0x71, 0x35, 0x1B, 0x24, 0x73, 0x75, 0x2E, 0x34, 0x39
]b =[71, 68, 66
]
c=""
for i in range(len(a)):c+=chr(a[i]^b[i%(len(b))])
print(c)
INSA{CXX_1s_h4rd3r_f0r_st4t1c_4n4l1sys_wh3n_d3bugg3r_f41ls}
[INSHack2018]Tricky-Part1相关推荐
- CF429D Tricky Function(求解公式、经分析转为求平面最近点对、思维)
整理的算法模板合集: ACM模板 目录 CF429D Tricky Function 题意实际上就是给定长度为 nnn 的一串序列a1,a2,...,ana_1, a_2,...,a_na1,a2 ...
- Storefront与NetScaler的集成配置 - part1
Storefront与NetScaler的集成配置 - part1 http://kaiqian.blog.51cto.com/blog/236001/1344447 Storefront与NetSc ...
- Lync Server 2010标准版系列PART1:基础构建
可能环境准备已经是老生常谈的东西了,但我们搭建环境做测试.评估,或者说在客户生产环境做部署,非常需要重视的就是细节,力求做到一丝不苟,并且快速完成部署任务.所以在测试环境的搭建中,基础环境的准备是非常 ...
- 从零开始学Win32平台缓冲区溢出(Part1)
原文:Stack Based Buffer Overflow in Win 32 Platform: The Basics 译者:鸢尾 来源:从零开始学Win32平台缓冲区溢出(Part1) 缓冲区溢 ...
- Cocos2dx-demo演示项目:Part1
这个项目,我主要是用来积累.记录自己在利用cocos2dx引擎进行项目开发.学习实践中的开发经验.每天的开发任务.查看别人分享的内容,总是能够收获到可取的东西,将这些可取的东西自己再着手开发一次,能够 ...
- CS231n 学习笔记(1)——神经网络 part1 :图像分类与数据驱动方法
*此系列为斯坦福李飞飞团队的系列公开课"cs231n convolutional neural network for visual recognition "的学习笔记.本文主要 ...
- 写给大家看的机器学习书【Part1】什么是机器学习?机器学到的到底是什么?
写给大家看的机器学习书[Part1]什么是机器学习?机器学到的到底是什么? 机器学习 深度学习 神经网络 人工智能 阅读1390
- [INSHack2018]Crypt0r part 1
[INSHack2018]Crypt0r part 1 题目 description.md # Crypt0r part 1Our IDS detected an abnormal behavior ...
- 黑客与画家 part1 版权声明 part2 O'Reilly Media,Ina.介绍
part1 版权声明 page 11 版权声明 英文原版O'Reilly Media,Ina.出版社2004. 简体中文版由人民邮电出版社出版,2011.英文原版的翻译得到O'Reilly Media ...
最新文章
- Item 14: 如果函数不会抛出异常就把它们声明为noexcept
- 【新星计划】Linux命令行相关指令汇总
- 重构-打造爱因斯坦谜题最快算法
- animate.css(第三方动画使用方法)
- Android开发 GradientDrawable详解
- css3 transition 和 animation实现走马灯
- 坡度土方计算案例_【攻略】如何解锁方格网法土方计算?
- 3.工作组环境下的应用
- linux 远程shell,linux 远程shell 实现
- You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true
- 什么是动态DNS(DDNS)
- 【关于四足机器人那些事】足端轨迹规划-复合摆线轨迹
- Excel引用函数-实例1
- Python脚本中调用其他Python脚本
- Figma#3:色彩
- unity初写游戏(四)怪物产生方式
- WEB安全性测试测试用例(基础).doc
- Cello项目填坑记:oprator dashborad的前端Nodejs代码编译打包问题
- 大数据行业薪资有多少 如何去学习大数据开发
- http proxy 代理
热门文章
- ML:MLOps系列讲解之《基于ML的软件的三个层次之01 Data: Data Engineering Pipelines》解读
- AI:《DEEP LEARNING’S DIMINISHING RETURNS—深度学习的收益递减》翻译与解读
- 成功解决ValueError: numpy.ufunc size changed, may indicate binary incompatibility. Expected 216 from C h
- 成功解决from scipy.misc import imread, imresize ImportError: cannot import name ‘imread‘
- ML之NB:利用朴素贝叶斯NB算法(CountVectorizer+不去除停用词)对fetch_20newsgroups数据集(20类新闻文本)进行分类预测、评估
- 成功解决:利用编程向数据库插入一条记录,而从数据库中查不到该条记录
- DL之Mask R-CNN:2018.6.26世界杯阿根廷队VS尼日利亚比赛2:1实现Mask R-CNN目标检测
- PyQt之Eric:成功解决No module named 'my_image_rc'
- 「CF622F」The Sum of the k-th Powers「拉格朗日插值」
- 两种方法可以达到背景图不缩放的效果