【实验吧】该题不简单——writeup
题目地址:http://ctf5.shiyanbar.com/crack/3/
一定要注意读题:
要求找出用户名为hello的注册码,这八成就是 要写注册机啊!
————————————————————————————————————————————————————————————————————
查壳:
not packed,无壳
找到关键函数:

发现是一个jnz跳转,当sub_4011D0()函数的返回值不为0的时候,就进入了loc_401079的函数,也就是密钥无效,我们进到这个sub_4011D0(),F5查看伪C代码:

memset函数:
void *memset(void *s, int ch, size_t n);函数解释:将s中当前位置后面的n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。lstrcat函数功能:该函数将字符串lpString2附加在另一个字符串lpString1后面。字符串比较函数strcmp:
格式: strcmp(字符数组名1,字符数组名2)
功能:按照ASCII码顺序比较两个数组中的字符串,并由函数返回值返回比较结果。
字符串1=字符串2,返回值=0;
字符串1〉字符串2,返回值〉0;
字符串1〈字符串2,返回值〈0。
username = "hello"
counter = 0;
password = "Happy@"
for i in username:
password = password + chr((counter + counter * ord(i) * ord(i)) % 0x42 + 33)
counter = counter + 1
print(password)
chr返回值是当前整数对应的 ASCII 字符。
ord返回值是对应的十进制整数。
得出 flag:Happy@!GA0U
【实验吧】该题不简单——writeup的更多相关文章
- 实验吧web题:
实验吧web题: 这个有点简单 因为刚了解sqlmap,所以就拿sqlmap来练练手了 1,先测试该页面是否存在sql注入漏洞 2.找到漏洞页面,复制url,然后打开sqlmap 先查看当前数据库 然 ...
- 实验吧web题(26/26)全writeup!超详细:)
#简单的SQL注入 http://www.shiyanbar.com/ctf/1875 1)试着在?id=1,没有错误 2)试着?id=1',出错了,有回显,说明有注入点: You have an e ...
- 实验吧 web题writeup
1.http://ctf5.shiyanbar.com/web/wonderkun/web/index.html 用户名我输入:or'xor"and"select"uni ...
- 实验吧编程题:Hashkill
原题:6ac66ed89ef9654cf25eb88c21f4ecd0是flag的MD5码,(格式为ctf{XXX_XXXXXXXXXXX_XXXXX})由一个0-1000的数字,下划线,纽约的一个区 ...
- 实验吧CTF题库-WEB题(部分)
看起来有点难 提交admin http://ctf5.shiyanbar.com/basic/inject/index.php?admin=admin&pass=admin&actio ...
- 实验吧CTF题库-安全杂项
XDCTF misc200: 题目提示: 下载文件 用foremost分离文件 接下来用archpr 4.53进行明文攻击 先把00002700.zip中的readme.txt提取出来压缩成zip文件 ...
- 实验吧关于隐写术的writeUp(一)
0x01 Spamcarver 原题链接 http://www.shiyanbar.com/ctf/2002 1.用Hex workshop打开图片,图片的开头是 FF D8 ,这是jpeg格式的文件 ...
- 实验吧ctf题库web题wp
经历了学校的校赛,一度自闭,被大佬们刺激的要奋发图强. 1.后台登录 链接: http://ctf5.shiyanbar.com/web/houtai/ffifdyop.php 打开题目首先查看源码, ...
- CTF实验吧让我进去writeup
初探题目 两个表单,我们用burp抓包试试 这时候我们发现Cookie值里有个很奇怪的值是source,这个单词有起源的意思,我们就可以猜测这个是判断权限的依据,让我们来修改其值为1,发送得到如下显示 ...
随机推荐
- View源码-Touch事件
在Android-27中查看源码: 首先我们来查看单个View的触摸事件的处理,在View的dispatchTouchEvent方法中看看源码是如何处理的. public boolean dispat ...
- CDH版本Hbase二级索引方案Solr key value index
概述 在Hbase中,表的RowKey 按照字典排序, Region按照RowKey设置split point进行shard,通过这种方式实现的全局.分布式索引. 成为了其成功的最大的砝码. 然而单一 ...
- JS如何定义方法及调用 精选
简单搜索了下,遇到点问题1,经常在JS中看到如var foo = function(){}的形式foo是方法名还是对象名,如果想调用此方法,是用foo(),foo.function(),还是该如何正确 ...
- c 获取 域名ip
#include <stdio.h> #include <netdb.h> int main(int argc, char *argv[]) { ) { printf(]); ...
- Proftpd mysql认证配置文档
Proftpd mysql认证配置文档 ver1.0, 2012/09/25 一.下载安装proftp mysql 下载 wget http://cloud.github.com/downloads/ ...
- 51nod1671【货物运输】
开始天真的我以为这道题和运输计划是一样的套路.于是写了一发,debug后发现过了第一个点,十分开心的交了一发,结果只过了第一个点.后来发现这个并不是一样的,因为修建黑洞之后路径法变了,而运输计划没有( ...
- ES BM25 TF-IDF相似度算法设置——
Pluggable Similarity Algorithms Before we move on from relevance and scoring, we will finish this ch ...
- C/C++语法知识点汇总
* 静态局部变量,在不同函数中可以同名. 静态全局变量,在不同文件中可以同名. 静态函数,在不同文件中可以同名. * 普通全局变量和普通函数,在同一工程中不能同名. 在相链接的程序与库之间,可以同 ...
- Web 攻击之 XSS 攻击及防御策略
XSS 攻击 介绍 XSS 攻击,从最初 netscap 推出 javascript 时,就已经察觉到了危险. 我们常常需要面临跨域的解决方案,其实同源策略是保护我们的网站.糟糕的跨域会带来危险,虽然 ...
- eclipse 通过maven 开发storm项目
window系统安装java 首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/ind ...