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图片,下载图片 分析 ...
随机推荐
- json_encode用法
1.从数据库中查询出来的数据,放在数组中 $query=mysql_query($SQL); while($row = mysql_fetch_array($query)){ $xda ...
- Trie树(字典树)(1)
Trie树.又称字典树,单词查找树或者前缀树,是一种用于高速检索的多叉树结构. Trie树与二叉搜索树不同,键不是直接保存在节点中,而是由节点在树中的位置决定. 一个节点的全部子孙都有同样的前缀(pr ...
- swift--使用 is 和 as 操作符来实现类型检查和转换 / AnyObject与Any的区别
声明几个类: //动物类 class Animal{ } //陆地动物类 class terricole: Animal { } //海洋动物类 class SeaAnimals: Animal { ...
- MQTT 3.1协议非严肃反思录
前言 MQTT 3.1协议在弱网络环境下(比如2G/3G等)表现不够好,因此才有了反思. 弱网环境下表现 手机等终端在弱网络环境下丢包情况会非常明显,连接MQTT Server成功率很低.相比单纯的请 ...
- sencha touch 入门系列 (九) sencha touch 布局layout
布局用来描述你应用程序中组件的大小和位置,在sencha touch中,为我们提供了下面几种布局: 1.HBox: HBox及horizontal box布局,我们这里将其称为水平布局,下面是一段演示 ...
- ios 设置委托delegate
为了进行页面传值,也可以用委托的方法. 下面以时间控件为例. 1.首先,在.h 文件设置委托 #import <UIKit/UIKit.h> @protocol DatePickerVie ...
- 几行小代码,将Testlink的xml用例导入至excel
最近在使用Testlink时,发现导入的用例是xml格式,且没有合适的工具转成excel格式,xml使用excel打开显示的东西也太多,网上也有相关工具转成csv格式的,结果也不合人意. 那求人不如尔 ...
- Android动态添加布局
//1.利用LayoutInflater的inflate动态加载XML mLinearLayout = (LinearLayout)findViewById(R.id.LinearLayout_ID) ...
- shell用curl抓取页面乱码,参考一下2方面(转)
1.是用curl抓取的数据是用类似gzip压缩后的数据导致的乱码.乱码:curl www.1ting.com |more乱码:curl -H "Accept-Encoding: gzip&q ...
- 170724、springboot编程之完整demo
综合之前学习,参考网上各大神博客,写了一个小demo,需要的朋友可以参考一下! 项目地址:https://github.com/zrbfree/spring-boot-anna.git