进入后查看源码发现提示都说听听歌了!

下载Hei_Mao_Jing_Chang.mp3文件,使用命令strings Hei_Mao_Jing_Chang.mp3查看文件
在文末看到一段PHP代码

if(empty($_POST['Black-Cat-Sheriff']) || empty($_POST['One-ear'])){die('
$clandestine = getenv("clandestine");
if(isset($_POST['White-cat-monitor']))$clandestine = hash_hmac('sha256', $_POST['White-cat-monitor'], $clandestine);
$hh = hash_hmac('sha256', $_POST['One-ear'], $clandestine);
if($hh !== $_POST['Black-Cat-Sheriff']){die('
echo exec("nc".$_POST['One-ear']);

分析代码:
首先要使用POST方式提交参数Black-Cat-Sheriff和One-ear;
getenv()函数定义:取得系统的环境变量;
使用POST方式提交White-cat-monitor,使用hash_hmac函数加密key为clandestine赋值给变量clandestine,再次使用hash_hmac函数加密,密钥为clandestine,此时的clandestine为White-cat-monitor加密的结果,赋值给变量hh;
使hh===Black-Cat-Sheriff;
One-ear可控.

hash_hamc函数是关键点,学习一下
hash_hmac($algo, $data, $key)
当传入的$data为数组时,加密得到的结果固定为NULL;那么第二次的hash_hmac就是可控的.

预测hh的值,将其赋值给Black-Cat-Sheriff

最后Payload为:

White-cat-monitor[]=0&Black-Cat-Sheriff=afd556602cf62addfe4132a81b2d62b9db1b6719f83e16cce13f51960f56791b&One-ear=;env

使用POST提交这三个参数即可.

BUUCTF--[羊城杯 2020]Blackcat相关推荐

  1. buuctf————[羊城杯 2020]login

    1.查壳. 无壳,64位.(当时还不知到PyInstaller ) 2.直接丢到IDA反编译.发现啥也没有. (连个提示性的字符串也没有,但运行是有input something.很迷.) 看了看大佬 ...

  2. BUUCTF[羊城杯 2020]easyre

    64位无壳程序 IDA64打开 main函数: int __cdecl main(int argc, const char **argv, const char **envp) {int v3; // ...

  3. [羊城杯 2020]GMC

    [羊城杯 2020]GMC 题目 from Crypto.Util.number import getPrime,bytes_to_long,getRandomNBitInteger from sec ...

  4. [羊城杯 2020]Power

    [羊城杯 2020]Power 题目 from Crypto.Util.number import * import gmpy2 from secret import flagp = getPrime ...

  5. [羊城杯 2020]RRRRRRRSA

    [羊城杯 2020]RRRRRRRSA 题目 import hashlib import sympy from Crypto.Util.number import *flag = 'GWHT{**** ...

  6. [羊城杯 2020]Bytecode [UTCTF2020]babymips

    文章目录 [羊城杯 2020]Bytecode 查看题目 python代码 注意点: BINARY_SUBTRACT 这个是减法 BINARY_SUBSCR 这个是索引 Z3约束脚本 注意点: 注意最 ...

  7. [羊城杯 2020]login [SUCTF2019]hardcpp

    文章目录 [羊城杯 2020]login 思路:一个py编译的exe,需要解包,然后反编译成py文件 1.解包:python pyinstxtractor.py login.exe 提示:pyinst ...

  8. [羊城杯 2020]逃离东南亚

    [羊城杯 2020]逃离东南亚 考点 复现过程 参考链接 考点 1.图片高度隐写 2.silenteye 3.空格与tab隐写 4.需要编程找到隐写内容并进行解码 复现过程 解压压缩包有三个压缩包文件 ...

  9. [羊城杯2020]easyphp --- 伪协议的使用时机,---python上传.htaccess的利用 -- preg_match绕过

    目录: 一. 自己做: 二.学到的.不足: 三. 1. 利用.htaccess来设置文件自动包含 2. 绕过 \n 的过滤 3. 绕过stristr的过滤. 4. 绕过preg_match 2.思路二 ...

  10. BUUCTF Reverse/[羊城杯 2020]easyre

    查看信息,无壳,64位程序 IDA打开分析代码,又是一个字符串比较的问题,输入flag,对flag加密三次,flag的长度为38 int __cdecl main(int argc, const ch ...

最新文章

  1. AttributeError: 'PyQt5.QtCore.pyqtSignal' object has no attribute 'connect'
  2. Transaction rolled back because it has been marked as rollback-only
  3. 搞硬件,别吹牛了,好好做个规划!
  4. 神舟笔记本电源管理软件_笔记本电脑是一直插着电源好,还是拔了电源好?
  5. 【转】 VC MFC 钩子 实现 自绘 窗体 标题栏 非客户区
  6. 如何正确的开始用Go编程
  7. Leetcode: mimimum depth of tree, path sum, path sum II
  8. MySQL Date and Time Types(日期和时间格式)
  9. 电脑遇到蓝屏代码0x000007b问题如何解决
  10. android 打印kernel log,Android native log输出为kernel log方法
  11. android属于数据库管理系统,详细谈谈Android系统中的SQLite数据库的应用
  12. 微信 dat 文件还原
  13. 乱斗西游2辅助 强力辅助排行一览
  14. VS2019+WDK10编写xp平台的驱动
  15. 90后,第一批接棒白酒的“年轻人”
  16. 雪佛兰linux高德_高德地图的使用一
  17. java 发送邮件嵌套HTML模板 (二)
  18. 《罗辑思维》的逻辑缺陷
  19. 临渊赠鱼,不如教人结网
  20. WebAR框架/开发工具汇总整理大集合

热门文章

  1. 阿瑟同款动态爱心代码
  2. linux内核链接脚本vmlinux.lds分析(十一)
  3. C# Cookies设置和读取
  4. Js中设置css样式
  5. 赋值表达式的左值和右值
  6. python getopt.getopt,Python optparser 和getopt
  7. vue 挂载全局变量
  8. SQL Server为数据表增加列(字段)的SQL语句
  9. 心田花开:一年级语文《乌鸦喝水》教案解析及练习题
  10. C# wpf Expander控件的简单应用(7)