作为一个bin小子,这次一个bin都没做出来,我很羞愧。

0x00 拯救鲁班七号

具体操作不多说,直接进入反编译源码阶段

可以看到,只要2处的str等于a就可以了,而str是由1处的checkPass返回,于是进入checkPass函数。

从代码看,这是调用了so库里的函数,并且我们知道so库的名字叫humen

于是找到so库,拖进ida静态分析

找到checkPass函数,直接F5,通过分析,2中的代码最为关键

这段代码把我们输入的密码做了非常复杂的变换,变换后得到的字符串为S!@#@1FD23154A34

于是我找了16张纸,将flag变换出来了。。。。。

0x01 取证密码

反编译

进入encrypt函数

找到XTU.so拖进ida静态分析。

这段代码很简单,脚本如下

 dest = [0x39,0x20,7,0xA,0x20,0x29,0x13,2,0x3A,0xC,0x11,0x31,0x3B,0xB,7]
str = 'Welc0meT0XTUCTF'
str1 = 'yInS567!bcNOUV8vwCDefXYZadoPQRGx13ghTpqrsHklm2EFtuJKLzMijAB094W'
a = len(str)
b = ''
for i in range(a):
b += str1[dest[i]]
print b

运行,得到flag.

0x02 人民的名义-抓捕赵德汉1

是个jar文件,直接反编译。

分析逻辑,直接进入checkPassword分析

很明显只要MD5解密就行

0x03人民的名义-抓捕赵德汉2

是个jar文件,直接反编译

好多乱码,很方,但还是继续分析,进入这个不知名的函数

看到两个关键函数,先进入第一个函数分析,一路追踪

复现这段代码

得到字符串JsnatterrtJuaththovacke

然后进入开始的第二个函数

代码逻辑很简单,下面是脚本

 # -*- coding: utf-8 -*-
def f1(a,b):
return f2(a) % len(b)
def f2(b):
if b > 2:
return f2(b - 1) + f2(b - 2)
else:
return 1
x = 'JsnatterrtJuaththovacke'
b = ''
z = 0
for i in range(0,4):
for j in range(0,4):
b += x[f1(z + j,x)]
z += 5
print b

运行得到flag.注意格式flag{xxxx-xxxx-xxxx-xxxx}                                                                                                                        .

2017年网络空间安全技术大赛部分writeup的更多相关文章

  1. 2017年陕西省网络空间安全技术大赛——种棵树吧——Writeup

    2017年陕西省网络空间安全技术大赛——种棵树吧——Writeup 下载下来的zip解压得到两个jpg图片,在Kali中使用binwalk查看文件类型如下图: 有两个发现: 1111.jpg 隐藏了一 ...

  2. 2017年陕西省网络空间安全技术大赛——一维码——Writeup

    <!doctype html> 2017年陕西省网络空间安全技术大赛——一维码——Writeup 先判断下载的文件flag.png确实是png格式的图片后(binwalk, file命令均 ...

  3. 2017年陕西省网络空间安全技术大赛——人民的名义-抓捕赵德汉2——Writeup

    下载下来的文件是一个jar包,用die和binwalk检查,确实是一个纯正的jar包 java -jar FileName运行jar包,观察文件的外部特征,发现也是判断password的题目 ​ 用查 ...

  4. 陕西省网络空间安全技术大赛部分题目writeup

    签到-欢迎来到CSTC2017 10 欢迎来到CSTC2017 ZmxhZ3tXZWlTdW9GeXVfQmllTGFuZ30= Base64解密:flag{WeiSuoFyu_BieLang} 种棵 ...

  5. 2016第二届陕西省网络空间安全大赛WriteUp

    2016年5月28号(正式比赛) 有选择题和实践题,俩队员在弄选择题时,我去拿了web1的一血. 0x01 web 是一道代码审计题,发包,返回了源代码: <?php if (isset($_G ...

  6. 2018~第三届南宁市网络安全技术大赛~nnctf~write-up

    Web 1.超简单 分值:100 类型:WEB 已解决 题目:超简单的web题  http://gxnnctf.gxsosec.cn:12311/ 代码审计 <?php $white_list ...

  7. 第一届合天杯河北科技大学网络安全技术大赛 web6 writeup

  8. 第三届“百越杯”福建省高校网络空间安全大赛_Do you know upload?

    题目在i春秋的ctf训练营 既然是上传,那就直接抓包 二话不说上来先给个00截断传个一句话助助兴 直接就成功了.... 赶紧操起菜刀去连接 进去之后发现ctf.sql是个空文件,那么flag应该在数据 ...

  9. 第三届“百越杯”福建省高校网络空间安全大赛writeup--Do you know upload?

    一打开网址,可以看出应该是文件上传漏洞,查看源码,也有可能是文件包含 上传个图片,成功,然后上传一句话木马 通过bp进行上传绕过 , 开始菜刀连接http://e00b6eca3c9c4e14a31c ...

随机推荐

  1. 1004 Counting Leaves (30 分)

    A family hierarchy is usually presented by a pedigree tree. Your job is to count those family member ...

  2. Android 跨应用调用Activity

    http://blog.csdn.net/ouyangliping/article/details/7972141 如何调用另外一个app应用的activity或者service,本文提供一个验证可行 ...

  3. MySql 5.6 遇到的一些问题

    1. 卸载5.5之后,使用 mysql installer 时,没法设定 data directory .  最后再次删除mysql installer之后,使系统干净后才能重新安装, 然后界面出现了 ...

  4. 字符串最小表示初探 By cellur925

    我们考虑有一个字符串,可以从这个字符串的不同位置出发,把这个字符串大声朗读出来,当到字符串末端的时候再从头开始读,直到回到"梦开始的地方". 设字符串长度为\(n\),那么有\(n ...

  5. 黑马方法引用学习 Stream流 函数式接口 Lambda表达式 方法引用

  6. python操作rabbitmq实现消息过滤接收

    目标: 代码实现(direct_product.py) # __author__ = 'STEVEN' import pika,sys #开启socket connection = pika.Bloc ...

  7. [題解/狀壓dp]POJ_2411_Mondriaan's dream

    关于“我读过很多书,到后来大部分都被我忘记了,那阅读的意义是什么?”的疑问,我看过最巧妙的一个回答:当我还是个孩子的时候,我吃过很多的食物,大部分已经一去不复返而且被我忘记了,但可以肯定的是,它们中的 ...

  8. Codeforces Round #390 (Div. 2) D

    All our characters have hobbies. The same is true for Fedor. He enjoys shopping in the neighboring s ...

  9. FTP任务(重点看断点续传)

    一.FTP任务目录: 1. 多用户同时登陆:     socketserver 2. 用户登陆,加密认证: md5加密 3. 上传/下载文件,保证文件一致性:md5摘要 4. 传输过程中现实进度条 5 ...

  10. python入门之实例-商品选择

    需求: 显示一系列商品,根据序号选择商品 li = ["手机","电脑","电视"] #函数enumerate在for循环遍历的时候,会默认 ...