当前位置: 首页 > news >正文

做汽配批发做那个网站比较好如何创建个人网站免费

做汽配批发做那个网站比较好,如何创建个人网站免费,做赌博彩票网站,微网站的建设模板有哪些介绍: 自己懒得搭建靶场了,靶场地址是 GitHub - CHYbeta/Code-Audit-Challenges: Code-Audit-Challenges为了方便在公网练习,可以随地访问,本文所有的题目均来源于网站HSCSEC-Code Audit 6、习题6 题目内容如下: 源代…

 介绍:

自己懒得搭建靶场了,靶场地址是 GitHub - CHYbeta/Code-Audit-Challenges: Code-Audit-Challenges为了方便在公网练习,可以随地访问,本文所有的题目均来源于网站HSCSEC-Code Audit

6、习题6

题目内容如下:

 源代码如下:

<?php   if (isset($_GET['view-source'])) { header('Location: http://challenge1.xa.honyasec.com/index.php'); show_source(__FILE__); exit(); } 
if (isset($_POST["submit"]))   
{ if (isset($_POST['hihi'])) { if (ereg("^[a-zA-Z0-9]+$", $_POST['hihi']) === FALSE) { exit('<script>alert("have fun:)")</script>'); } elseif (strlen($_POST['hihi']) < 11 && $_POST['hihi'] > 999999999) { if (strpos($_POST['hihi'], '#HONG#') !== FALSE) { if (!is_array($_POST['hihi'])) { include("flag.php"); echo "Congratulations! FLAG is : ".$flag; } else { exit('<script>alert("nonono")</script>'); } } else { exit('<script>alert("nonono")</script>'); } } else { exit('<script>alert("sorry")</script>'); } } 
} 
?> 
<a href="?view-source">view-source</a>  
代码分析:

通过代码分析,需要POST提交两个参数一个是submit 一个是hihi并且submit 在前,hihi在后。提交submit 的值无所谓,给一个值就好。

主要是hihi 参数,hihi参数的长度不能大于等于11,而且hihi的值要大于999999999 也就是最小是 1000000000 这样 hihi 的值的长度也就达到10了,所以用科学计数法绕过为 1e9,另外strpos()函数 需要拼接 #HONG# 也就是 1e9#HONG# 但是这样就不能算做数值大于999999999,前面正好有ereg("^[a-zA-Z0-9]+$", $_POST['hihi'] ,进行正则匹配。但是ereg() 可以用%00 截断绕过。 所以最后构造的paylaod 是

POST   #形式提交数据 
submit=1&hihi=1e9%00#HONG#    #data

提交之后,拿到flag ,该网站没有成功,估计靶场没有搭建好,重要的是思路

7、习题7

题目内容如下

源代码如下:

<?php 
include "flag.php"; 
$_403 = "Access Denied"; 
$_200 = "Welcome Admin"; 
if ($_SERVER["REQUEST_METHOD"] != "POST") die("BugsBunnyCTF is here :p..."); 
if ( !isset($_POST["flag"]) ) die($_403); 
foreach ($_GET as $key => $value) $$key = $$value; 
foreach ($_POST as $key => $value) $$key = $value; 
if ( $_POST["flag"] !== $flag ) die($_403); 
echo "This is your flag : ". $flag . "\n"; 
die($_200); 
?>

分析代码后发现,如果要拿到flag 必须满足三个if 的条件,1、请求方法必须包含POST请求,2、并且必须提交必须有flag参数,3、POST提交的flag 的值要和$flag相等。

首先根本不知道$flag 的值是多少,但是后面有一个die($200);同时,含有foreach()函数可以进行变量覆盖,通过die($200)输出$flag 的值。

接着分析,发现了有两个foreach() 函数,所以在echo 函数输出的时候,输出的变量 $flag 是被覆盖过的。结合第一个foreach的功能,我们可以在第二个foreach之前先将$_200的值覆盖为原$flag的值,这样最后die($200)就会输出相当于die($flag)

变量覆盖漏洞解释:

通常将可以用自定义的参数值替换原有变量值的情况称为变量覆盖漏洞。

例如下面的例子

<?php $name='thinking'; foreach($_GET as $key=>$value) $$key = $value; var_dump($key); 
var_dump($value); 
var_dump($$key); 
echo $name; ?> 

如果给与参数?name=test 那么 $key=name $$key=test

最后输出如下

所以本题目,如果借助die($200)输入flag 需要将$flag的值赋值给 $200,同时需要POST 提交一个flag 的值

构造如下:
?$_200=flag 
flag=1           #POST

flag{xiaodalsdhasuyytajds}

当然,也可以借助die($_403)输出flag

if ( $_POST["flag"] !== $flag ) die($_403);

 构造如下

?_403=flag&_POST=1   # 利用第一个foreach函数将_403的值覆盖,同时构造满足$_POST["flag"] !== $flag将变量_POST给覆盖,从而初始化第二个foreach函数flag=                #POST方式将$flag的值

flag{xiaodalsdhasuyytajds} 

http://www.hengruixuexiao.com/news/13053.html

相关文章:

  • 长春火车站电话站长工具seo综合查询
  • 网站开发工作室网站快速收录工具
  • WordPress静态写入内存德州seo整站优化
  • 做单抗药的看什么网站好百度一下官方网页版
  • 山东省住房城乡和建设厅网站百度新闻排行榜
  • 公司网站需求优化搜索引擎
  • 做网站要学会什么网络热词作文
  • 军事新闻视频在线观看宁波seo网络推广多少钱
  • 邯郸做网站推广的公司上海今日头条新闻
  • wordpress排版问题seo推广是什么意怿
  • 怎么做淘宝客导购网站百度app怎么找人工客服
  • 如何仿造一个网站做网络销售哪个平台最好
  • 域名代备案北京关键词优化报价
  • 顺德新网站制作微博营销策略
  • 东莞 网站 建设企业网站建设服务
  • 惠安网站建设报价如何免费开自己的网站
  • 湖北做网站系统哪家好品牌网络营销案例
  • 做电影网站被找版权问题怎么处理企业网站模板建站
  • 公司推广文案网站排名优化外包公司
  • 网站治做啊app软文模板app
  • 设置网站关键词怎么做现在最火的推广平台有哪些
  • 企业网站建设主要考虑哪些seo有哪些网站
  • 移动网站建设解决方案潍坊seo招聘
  • 网络app开发网站建设价格百度登录个人中心官网
  • 温州免费做网站廊坊关键词排名优化
  • 网站建设南通大数据
  • 深圳做网站(龙华信科)汕头seo优化项目
  • webstorm网页制作教程品牌seo培训咨询
  • 学做软件的网站有哪些内容网站seo案例
  • 全国做旅游开发的公司搜索引擎优化的目标