BUUCTF--reverse2
--
2023-09-11 14:22:07 时间
reverse2
1预处理
获得信息
64位文件
2.拖进IDA64,shift+F12
可以直接看到flag,可是这不是最终的flag,双击跟进
然后F5找到伪代码
分析伪代码,找到关键的函数
for ( i = 0; i <= strlen(&flag); ++i )
{
if ( *(&flag + i) == 105 || *(&flag + i) == 114 )
*(&flag + i) = 49;
}
注意:这里的105、114、49都是ASCII码,参考ASCII码表可知
105表示i 114表示r 49表示1
所以最终的flag是把flag中的i和r替换成1.
flag{hack1ng_fo1_fun}
相关文章
- Asp.net mvc 网站之速度优化 -- 页面缓存
- 开箱即用的深度学习工具 -- TensorFlow.js
- 红黑树 -- 增删查改
- Android studio 2.0--android增量更新的那些事
- 前端的设计模式 -- 工厂模式
- 转 使用SwingBench 对Oracle RAC DB性能 压力测试 以及 MySQL基准测试工具--sysbench
- 贪心算法简介 -- 活动时间问题
- (2.15)备份与还原--使用作业备份、清理过期备份、清理历史记录、事务日志是否备份过
- IOS之未解问题--给UITableView提取UITableViewDataSource并封装瘦身失败
- 花果山第一届猿类分级考试实录--Talk is cheap,Show me the code
- Linux 信号signal处理函数--转