ISCC2016-BASIC、WEB、MISC简单writeup
RE和PWN题目的wp有大神已经放出来了,我也不擅长,就不搬了。bin求带。
BASIC
BASIC-1 50
仿射函数,百度“仿射加密法”,它讲的够清楚了。
BASIC-2 50

结尾的“=”这个特征很明显,base64解密,需要解多次,直到出现flag。
BASIC-3 50
题目说在这个页面却看不到,那么应该是藏在页面的某个地方,F12进入调试模式,找到下图的内容:

提示直接提交貌似不对,那么应该是有加密。ROT13加密,解密一下就OK了。
BASIC-1 100 心灵鸡汤

丢进OD搜了一下,发现了一个字符串。卡了一会,甚至连它的出处都搜到了。然后看了看这串字符只有大小写区别,可能是培根加密,然后解密出来得到flag。
BASIC-1 100 小伟密码
一个老旧无用的加密工具加密了文件,百度上有很多针对它的攻击方法。注意版本问题。(值得一提:如果不是专业的人员,不要自己乱搞什么加密,这就是例证。)
BASIC 200 JJ
文档是JFf*ck编码,不确定代码具体是什么,还是最好解码一下。然后找到网盘地址,下载。然后又是编码(泥煤)。查了一圈,是JJencode,然后在github上找到了脚本,解密出来,是一个JS压缩加密,再解一下吧。最后是一个alert。早知道就放进<script>标签里让它弹出了。
解密脚本获取:github搜索JJencode,第一个就是decoder,复制那个html代码,然后......
WEB
WEB100
注入,burp拦截一下,转存之后用sqlmap可以跑出来。(自己的电脑一直被banIP,换了别人没问题,郁闷)
WEB300
代码审计。真是ping出问题了......题目修改前交的flag,当时用&&dir就可以了,然后打开代码看一下,然后就是绕过去打flag。
WEB350-1 double kill
上传问题。测试了一下,上传的代码应该是过滤了后缀并检查了文件头。给php一句话加了图片头传上去之后,在uploads找到了但是不解析。之后用加了头的JS一句话再传,还是没访问到。注意包含地址,最后加了00截断,成功。(目的不是连接,只要能被解析就可以了。)
http://101.200.145.44/web5/index.php?page=uploads/图片ID.gif%00
http://101.200.145.44/web5/index.php?page=uploads/图片ID.jpg%00
WEB350-2 simple injection
注入问题。测试了可以注入的地方应该是用户名,用户名应该是admin了,有报错。盲注。在freebuf上有一篇类似的文章,用mid()逐位测试。也没有写脚本,用burpsuite上的暴力破解,爆出password字段的32位MD5值,解密,登陆后台即得到flag。
WEB500
这个有点费劲,先看代码。先用双向代理,曝出文件。第一次看了都没认出来是干嘛的。然后理了理,这几句是编码的流程,最后爆出来一句话的密码。然后构造payload完成注册,注意这里需要绕一下。最后带上cookie访问即可。
function checkpassword($user,$pwd,$pdo){
if($user!='admin'){
exit('you are not admin!');
}
$query="SELECT password FROM user WHERE username='admin'";
$result=$pdo->query($query);
if ($result!=null&&$result->rowCount()!==0){
while($row = $result->fetch()){
if ($row['password']===$pwd){
return 1;
}
}
}
return 0;
MISC
MISC 100
Wireshark打开,查看TCP包,追踪TCP流。看起来应该是一个图片。猜测出题者应该是让提取出文件然后操作的,不过在TCP追踪流中已经可以看到FLAG。

去掉空格提交。flag:w23e36ktr04
MISC 200
先用16进制编辑器查看一下吧。搜索常见的ASCII,搜到pass时,找到了密码:bfsiscc2016。
应该是MP3stego了,下载相应的工具,解密出隐藏的txt。

等号结尾一般是base64补位用的,base64解一次,还有等号。再用base64解,出错......实在想不到还有别的加密带=号了,就想着有没有base32。结果真有。在国外网站找到base32解密。最后,是这样解出来的:base64一次,之后用base32再解一次。
base64:SkYzWEk0M1JOWlNHWTJTRktKUkdJTVpXRzVSV0U2REdHTVpHT1pZPQ==
base32:JF3XI43RNZSGY2SFKJRGIMZWG5RWE6DGGMZGOZY=
flag:IwtsqndljERbd367cbxf32gg
MISC 300毕业论文
下载得到doc文件,用相应程序打开另保存为docx。改后缀为ZIP,解压,直接找document.xml。用notepad++打开,观察结构:1.spacing有-2和2之分;2.每个spacing之后仅有一个汉字(也就是对应只算一次)

利用正则将<w:spacing w:val="-2"/>变成0,将<w:spacing w:val="2"/>变成1,利用<.*>清除所有括号。统计出来少了一位。然后8位一行排列一下,每行是一个字符。考虑到最后答案是ASCII字符串,必定不会出现大于0x80的字符。但是字符串中出现了大于0x80的字符,于是人工在第一次出现大于0x80字符的那行的最前面增添了一位0,一次延后一位,所有结果合乎逻辑。转换成字符串得到flag。

MISC300-2加密协议
给了几个txt文档,看样子应该是数据包的转储。用wireshark导入16进制转储,看出来是ISAKMP协议包(主要是IKE协商)。按照次序整理好文件,截获数据对应main模式前4个包,密文对应第五个包。格式wireshark已经整理好了。看出来主要的算法是DES,采用的预共享密钥模式,nonce、双方的公钥还有其他系列的参数都可以提取出来。然后参考RFC2409,http://www.ietf.org/rfc/rfc2409.txt,算出DH的共享密钥、解密。
ISCC2016-BASIC、WEB、MISC简单writeup的更多相关文章
- i春秋misc部分writeup
i春秋misc部分writeup 一.敲击 方方格格,然后看到下面的格式,猜测出是键盘上的布局,然后看这些字母形成的形状想那些字母,就是flag了 2.滴滴滴 放到ctfcack里解密,发现时栅栏密码 ...
- Web Service简单入门示例
Web Service简单入门示例 我们一般实现Web Service的方法有非常多种.当中我主要使用了CXF Apache插件和Axis 2两种. Web Service是应用服务商为了解决 ...
- 通过flask实现web页面简单的增删改查bootstrap美化版
通过flask实现web页面简单的增删改查bootstrap美化版 项目目录结构 [root@node1 python]# tree -L 2 . ├── animate.css ├── fileut ...
- 通过flask实现web页面简单的增删改查
通过flask实现web页面简单的增删改查 # 1.后台程序falsk_web01.py #coding:utf-8 from flask import Flask,render_template,r ...
- @Basic表示一个简单的属性 懒加载,急加载
5.@Basic(fetch=FetchType,optional=true) 可选 @Basic表示一个简单的属性到数据库表的字段的映射,对于没有任何标注的getXxxx()方法,默认 即为 @Ba ...
- CTF-i春秋网鼎杯第二场misc部分writeup
CTF-i春秋网鼎杯第二场misc部分writeup 套娃 下载下来是六张图片 直接看并没有什么信息 一个一个查看属性 没有找到有用信息 到winhexv里看一下 都是标准的png图片,而且没有fla ...
- CTF-i春秋网鼎杯第一场misc部分writeup
CTF-i春秋网鼎杯第一场misc部分writeup 最近因为工作原因报名了网鼎杯,被虐了几天后方知自己还是太年轻!分享一下自己的解题经验吧 minified 题目: 一张花屏,png的图片,老方法, ...
- Web Services简单介绍
Web Services简单介绍 Web Services入门 一.Web Services简介 1.什么是Web Services? Web Services 是应用程序组件 Web Service ...
- Bugku - Misc图穷匕见 - Writeup
Bugku - Misc图穷匕见 - Writeup 原文链接:http://www.cnblogs.com/WangAoBo/p/6950547.html 题目 给了一个jpg图片,下载图片 分析 ...
随机推荐
- ROS节点理解--5
理解 ROS节点(原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/) Description: 本教程主要介绍 ROS 图(graph)概念 并讨 ...
- IOS -执行时 (消息传递 )
一 函数调用概述 Objective-C不支持多重继承(同Java和Smalltalk),而C++语言支持多重继承. Objective-C是动态绑定,它的类库比C++要easy操作. Ob ...
- angular学习(十五)——Provider
转载请写明来源地址:http://blog.csdn.net/lastsweetop/article/details/60966263 Provider简单介绍 每一个web应用都是由多个对象协作完毕 ...
- 关于BroadCastReceiver安全性的思考
尊重原创:http://blog.csdn.net/yuanzeyao/article/details/38948863 BroadCastReceiver是Android 四大组件之中的一个,应用非 ...
- JQuery------帮助文档
转载: http://www.css88.com/jqapi-1.9/jQuery.parseHTML/
- ios 6以后,UILabel全属性
一.初始化 1 UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(40, 40, 120, 44)]; 2 3 [s ...
- Javascript中的感叹号和函数function
js函数前加分号和感叹号是什么意思?有什么用?:http://www.cnblogs.com/mq0036/p/4605255.html function与感叹号:https://swordair.c ...
- Linux hwclock 命令
hwclock 即 Hardware Clock 硬件时钟,该命令用于查询或设置硬件时钟:硬件时钟是指主机板上的时钟设备,也就是通常可在 BIOS 画面设定的时钟:系统时钟是指 Kernel 中的时钟 ...
- js二级联动
<body> <section> <a>省份</a> <select id="province"> <option ...
- 使用ASIHTTPRequest xcode编译提示找不到"libxml/HTMLparser.h"
使用ASIHTTPRequest xcode编译提示找不到"libxml/HTMLparser.h",解决方法如下: 1>.在xcode中左边选中项目的root节点,在中间编 ...