第十七届全国大学生信息安全竞赛创新实践能力赛初赛部分复现

Misc

神秘文件

1.根据提示信息,均需要从ppt中提取信息

2.在ppt的属性中发现一串密文和key,解密之后得到第一部分,根据提示Bifid chipher,为双歧密码解密,使用Bifid Cipher Decode解码

3.在第五张幻灯片,发现有一串编码,base64之后得到第六部分

4.第三张幻灯片发现base64编码,解码之后得到flag

5.在第五张幻灯片的批注下找到base64,解码之后得到第五部分

6.在幻灯片的母版中发现加密的内容,并且需要溢出B,b,1,3,解码之后得到第八部分

7.在第四张幻灯片中选择窗口,发现加密内容,解码之后得到第七部分

8.将ppt改为zip之后,在照片的文件夹中发现图片有加密的内容,解密之后得到第九部分

9.在ppt的压缩包中发现doc文件打开之后,发现有加密的内容,解密(根据提示凯撒密码位移为10,且是base64编码)之后得到第二部分

 

10. 将压缩包中的.bin文件放在010中打开,发现加密内容

11.使用base64解码之后,再使用RC4解密,最后再base64,得到第三部分

Web

Simple_PHP

1.代码审计

<?php
ini_set('open_basedir', '/var/www/html/'); //这行代码使用 ini_set 函数设置 PHP 的 open_basedir 配置项。open_basedir 是一个安全相关的配置项,用于限制 PHP 可以访问的目录范围。这里将其设置为 /var/www/html/,意味着 PHP 只能在这个目录及其子目录中执行文件操作。
error_reporting(0);

if(isset($_POST['cmd'])){
    $cmd = escapeshellcmd($_POST['cmd']); //代码检查是否有名为 cmd 的 POST 参数。如果有,则使用 escapeshellcmd 函数处理该参数,该函数会尝试转义 shell 命令中的特殊字符,使其更加安全。
 if(!preg_match('/ls|dir|nl|nc|cat|tail|more|flag|sh|cut|awk|strings|od|curl|ping|\*|sort|ch|zip|mod|sl|find|sed|cp|mv|ty|grep|fd|df|sudo|more|cc|tac|less|head|\.|{|}|tar|zip|gcc|uniq|vi|vim|file|xxd|base64|date|bash|env|\?|wget|\'|\"|id|whoami/i', $cmd)) {
         system($cmd); //这段代码首先使用正则表达式来检查 $cmd 是否包含任何可能危险或敏感的命令。如果 $cmd 不包含这些命令,那么代码将使用 system 函数执行这个命令。system 函数用于执行外部程序,并输出其标准输出。
}
}


show_source(__FILE__);
?>

绕过知识点:

open_basedir函数的绕过:

open_basedir对命令执行没有限制

假如没有进行过滤 那我们就可以通过system函数直接执行

资料:绕过 open_basedir_glob 绕过basedir-CSDN博客

 escapeshellcmd()函数:

escapeshellcmd() 对字符串中可能会欺骗 shell 命令执行任意命令的字符进行转义。

资料:escapeshellarg参数绕过和注入的问题_escapeshellcmd-CSDN博客

编码绕过:

如果命令注入的网站过滤了某些分割符,可以将分隔符编码后(url编码,base64,十六进制编码等)绕过 

资料:如何实现CTF中命令执行绕过方法 - 网络管理 - 亿速云

方法一

无参数+数据库连接查询

1.使用php -r phpinfo();命令查看相关信息,phpinfo是一个服务器的运行指令,可以显示php服务器的配置信息。观察代码并没有发现禁用php,尝试用php -r 去执行php命令

php -r:执行一段php代码,如 php -r "echo 'hello world';"

2.因为linux好多指令被禁用了,考虑16进制转2进制,同样eval函数也没有被禁止,那么既能够不被转义,又能不被匹配,还是命令执行的,所以想到使用十六进制编码进行绕过

知识点1:

hex2bin()函数是PHP中的内置函数。 hex2bin()函数用于解码十六进制编码的二进制字符串。也就是说,它将以十六进制表示编码的二进制字符串解码回二进制表示。

hex2bin() 函数把十六进制值的字符串转换为 ASCII 字符。

注意:此函数的目的不是将十六进制数转换为二进制数,为此我们可以使用PHP中的 base_convert()函数。此函数仅用于解码十六进制编码的二进制字符串。

知识点2:

在十六进制中,只存在数字和字母,不会被转义,还能进制转换后绕过正则;

3.按照正常逻辑,查看index.php文件,发现什么都没有,再查看根目录,发现根目录下没有flag

4.想到读取/etc/passwd文件,发现有mysql用户,其中/root表示用户目录,/bin/bash表示该用户登录linux时用的shell。

/etc/passwd 是linux系统对用户进行识别的一个文件,系统中的所有用户都要在这里登记.当用户登录到linux系统时,linux会读取这个文件来确认用户的身份./etc/passwd文件中的每一行都表示一个用户信息;一行有7个段位;每个段位用:号分割;

5.想到flag在数据库里面,进行查找

相关命令:echo `mysql -u root -p'root' -e 'use PHP_CMS;show databases;'`;

这个命令是在命令行中执行的,它的作用是使用mysql命令连接到MySQL数据库,并执行查询语句来显示PHP_CMS数据库中的所有数据库,使用反引号`来引用命令的输出。

​6.使用echo `mysql -u root -p'root' -e 'use PHP_CMS;show tables;'`;来查表

7.使用来查字段 echo `mysql -u root -p'root' -e 'use PHP_CMS;select * from F1ag_Se3Re7;'`; 得到flag

  • 29
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 第17届全国大学生智能汽车竞赛是由中国高等教育学会主办的年度比。该比旨在提高大学生对智能汽车技术的兴趣和研究能力,促进智能汽车技术在中国的发展。参队伍需要设计并建造一辆智能汽车,并在竞赛中展示其在道上的性能。竞赛分为前资格和决两个阶段,选手需要在竞赛中展示其在道上的性能。 ### 回答2: 第17届全国大学生智能汽车竞赛全国高校学生之间的一项重要比活动。该竞赛旨在提升学生在智能汽车领域的科学技术创新能力,培养学生的动手实践与团队协作精神。 该比以团队为单位,参队伍由高校学生自愿组成。比主题包括智能驾驶、智能控制、智能感知和智能决策等方面。参队伍需要从设计到制作全程参与,包括车身结构设计、电路设计、编程等。比内容涵盖汽车自动驾驶、交通场景仿真、人工智能算法开发以及智能车辆的安全性能等多个方面。 比过程分为初赛、决和总决初赛阶段是为了筛选优秀的参队伍,测试他们的车辆在不同场景下的自主行驶能力。决则是对初赛晋级队伍进行进一步的比拼,评估他们的技术水平和创新能力。总决阶段则是最高级别的比,对决出一等奖、二等奖等等各个奖项。 在比过程中,评委们以指导组织和执法者身份全程参与,通过录像、现场点评等形式给予队伍们专业的建议和评价,帮助他们提高技术水平和综合实力。 第17届全国大学生智能汽车竞赛为广大学生提供了一个展示自己才华和创新能力的舞台。通过参与该比,学生们可以学到更多专业知识,提高实践能力,培养团队协作精神,为汽车智能化技术的发展做出贡献。同时,该竞赛也为企业提供了一个寻找优秀人才的机会,为智能汽车领域的发展注入了新鲜血液。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值