ssrf之curl协议,以及查看curl支持协议的办法

2023-12-29 09:47:05

1.curl支持的协议

<?php phpinfo() ?>

将这个内容写在php中

打开小皮运行后可得

用ctrl+f搜索curl得

可以查出curl所支持的协议

2.用ssrf获取信息

<?php

function curl($url){

????$ch=curl_init();//创建cURL会话

????curl_setopt($ch,CURLOPT_URL,$url);//设置cURL参数

????curl_setopt($ch,CURLOPT_HEADER,0);//设置是否返回响应头

????curl_exec($ch);//抓取URL,并把它传递给浏览器

????curl_close($ch);//关闭cURL资源,并且释放系统资源

}

$url=isset($_GET['url']) ? $_GET['url']: "";//判断是否存在url值,如果错存在则返回给$url不存在则返回空

curl($url);//调用curl函数

这里是使用的是function函数,也可以不用使用function函数

<?php

// 获取参数

$url = isset($_GET['url']) ? $_GET['url'] : "";

if ($url){

// 初始化curl

$ch = curl_init();

// 设置URL参数

curl_setopt($ch, CURLOPT_URL, $url);

// 设置是否返回响应头

curl_setopt($ch, CURLOPT_HEADER, 0);

// 执行

$result = curl_exec($ch);

// 关闭

curl_close($ch);

}

将上述代码写入ssrf1.php中打开ssrf.php

通过ssrf1.php去访问phpinfo

localhost2:8181/ssrf/ssrf1.php?url=http://localhost2:8181/phpinfo.php

也可直接访问百度

localhost2:8181/ssrf/ssrf1.php?url=www.baidu.com

这里需要注意访问其他网站比如京东淘宝时是是不能直接访问进去的,因为这些网站的协议是https协议ssrf.php 的代码不能直接绕过https的证书所以需要

curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);//这个是绕过ssl证书检查
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);//跳过host验证

输入这两行代码进行绕过,这样就可以访问了

localhost2:8181/ssrf/ssrf1.php?url=https://www.taobao.com

这里需要注意小皮的版本和phpstorm的版本要一致,不然有些网站可能访问不成功

文章来源:https://blog.csdn.net/qq_59020256/article/details/135282483
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。