欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[原创]ISCC 2019 writeup解题思路[xueqi]

[原创]ISCC 2019 writeup解题思路[xueqi]

iscc 2019 解题思路

WEB

Web1 

题目地址: http://39.100.83.188:8001

  1. <?php
  2. error_reporting(0);
  3. require 'flag.php';
  4. $value = $_GET['value'];
  5. $password = $_GET['password'];
  6. $username = '';
  7. for ($i = 0; $i < count($value); ++$i) {
  8.     if ($value[$i] > 32 && $value[$i] < 127) unset($value);
  9.     else $username .= chr($value[$i]);
  10.     if ($username == 'w3lc0me_To_ISCC2019' && intval($password) < 2333 && intval($password + 1) > 2333) {
  11.         echo 'Hello '.$username.'!', '<br>', PHP_EOL;
  12.         echo $flag, '<hr>';
  13.     }
  14. }
  15. highlight_file(__FILE__);

读了下代码,get传参,value和password。Value的值要等w3lc0me_To_ISCC2019,但ascii值不能在32和127之间。

查php手册资料得知chr()函数是 值除以256取余数。这就好办了,只需要在原有数值上加上256就ok了。

再看password ,intval可以用科学技术法绕过,如:2e4

  1. http://39.100.83.188:8001/index.php?value[]=375&value[]=307&value[]=364&value[]=355&value[]=304&value[]=365&value[]=357&value[]=351&value[]=340&value[]=367&value[]=351&value[]=329&value[]=339&value[]=323&value[]=323&value[]=306&value[]=304&value[]=305&value[]=313&password=2e4

 


Web2

此题是要输入三位数值,还有验证码,要暴力破解试下。

自己从999倒着试试,还没到990就试出来了

不过大佬告诉我要抓包,删除cookie和user_code的值,爆破pwd

 


Web3

sqli-labs中的一道原题,好像加了过滤。自己做题时,admin好像被大佬改了弱口令,捡漏登陆admin直接爆出flag,后来被修复。

思路是sql注入,注册帐号登陆后,修改密码页面,帐号填admin'or 1# 修改admin的密码,然后登录admin获取flag


 


Web4

http://39.100.83.188:8066

  1. <?php 
  2. error_reporting(0); 
  3. include("flag.php"); 
  4. $hashed_key = 'ddbafb4eb89e218701472d3f6c087fdf7119dfdd560f9d1fcbe7482b0feea05a'; 
  5. $parsed = parse_url($_SERVER['REQUEST_URI']); 
  6. if(isset($parsed["query"])){ 
  7.     $query = $parsed["query"]; 
  8.     $parsed_query = parse_str($query); 
  9.     if($parsed_query!=NULL){ 
  10.         $action = $parsed_query['action']; 
  11.     } 
  12.     if($action==="auth"){ 
  13.         $key = $_GET["key"]; 
  14.         $hashed_input = hash('sha256', $key); 
  15.         if($hashed_input!==$hashed_key){ 
  16.             die("
  17.         } 
  18.         echo $flag; 
  19.     } 
  20. }else{ 
  21.     show_source(__FILE__); 
  22. }?>

读下代码,parse_url这个函数引起注意,百度了下,原来存在变量覆盖漏洞。

Key要=0 ,key是被sha256加密过的,传一个hashed_key,将原来的密文覆盖掉,hashed_key的值是0经过sha256加密的密文

构造

  1. ?action=auth&hashed_key=5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9&key=0

 


---------------------------------------------2019-5-20更新--------------------------------------

MISC

Misc1 隐藏的信息

这是一个被混淆的文件,但是我忘记了这个文件的密码。你能够帮助我还原明文吗?

0126 062 0126 0163 0142 0103 0102 0153 0142 062 065 0154 0111 0121 0157 0113 0111 0105 0132 0163 0131 0127 0143 066 0111 0105 0154 0124 0121 060 0116 067 0124 0152 0102 0146 0115 0107 065 0154 0130 062 0116 0150 0142 0154 071 0172 0144 0104 0102 0167 0130 063 0153 0167 0144 0130 060 0113 

看这些数字,像是某种进制,最大是7,可能是8进制,转换十进制再对应ascii表转字符串。得到结果。


Misc  倒立屋

拿到压缩包,里面是张图,还以为线索在倒立上,用Stegsolve打开,发现是lsb隐写。


选择 R G B 最低为勾选,就可看到iscc字段,不过flag提交有个脑洞就是要把找到的线索反序排列提交。


Misc Keyes' secret

打开时,看到一大串字符 头都大了,也不知道是什么加密什么算法。睡一觉起来,发现有一段{}括住的字符串。


解密无果,后来试了下键盘轨迹,发现轨迹前四个是iscc,此题需要有想象力,字母对照键盘画轨迹。


Misc Aesop's secret


打开是个gif图片,快速闪动,能看出来是个图案,拖进pscs6里,所有图层勾选可视。发现iscc图形旁边是黑点,还以为线索在周围黑色像素点上,拖进hex编辑器发现gif尾部存在一串加密密文,怀疑是base64,复制解密,无果。


拿去试AES解密,解不出,密钥不知道,想起gif的iscc字样,密码填入iscc,解密拿到明文。


Misc Welcome-流浪


这个题目拖了五天才有思路,期间大佬们一直调戏我这萌新,说电影里有线索,想到出题人的脑洞,我还真去看了遍电影,专去找户口身上的付款二维码,条码,刘培强的号码牌条码(气到痛哭)。

然后有大佬提示我留意 “户口”“长条”,然后就和小伙伴展开脑洞,长条是李一一,一一,1 !!!.户口,刘启,口,0,???,二进制?

看密文,发现户口是重点,空格是隔断,我先把有户口的字符串替换为0,没户口的替换为1,拿去解密,无果?哪里出了错?

朋友做的相反,是吧有户口的作为 1 ,没户口的作为0,解密拿到了flag

011001100110110001100001011001110111101101001001010100110100001101000011010111110101011101000101010011000100001101001111010011010100010101111101萇條

长条多出来了,删掉,二进制转字符串:得到结果


Misc他们能在一起吗

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功