SSRF知识点

curl()

说明

bool curl_setopt ( resource $ch , int $option , mixed $value )

为给定的cURL会话句柄设置一个选项。

参数

ch

由 curl_init() 返回的 cURL 句柄。

option

需要设置的CURLOPT_XXX选项。

value

将设置在option选项上的值。

CURLOPT_HEADER   :启用时会将头文件的信息作为数据流输出。     

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1)   //不返回header头消息

CURLOPT_RETURNTRANSFER  :将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1)  //将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。

curl_init():初始化一个新的会话,返回一个cURL句柄,供curl_setopt(), curl_exec()和curl_close() 函数使用。如果成功,返回一个cURL句柄,出错返回 FALSE

curl_exec(resource $ch):执行给定的cURL会话。这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。

                                        参数ch由 curl_init() 返回的 cURL 句柄。

                                        成功时返回 TRUE, 或者在失败时返回 FALSE。 然而,如果 CURLOPT_RETURNTRANSFER选项被设置,函数执行成功时会返回执行

                                         的结果,失败时返回 FALSE

curl_close() :关闭一个cURL会话

 

 

CTFSHOW过关知识点:

  • 当IP地址被过滤时,如127.0.0.1被过滤,0可以忽略,写成127.1       127.0.1           

            另外可以将ip地址的各位转换成8进制或者16进制  十六进制: 0x7F.0x00.0x00.0x01   当然也可以只转一个,具体视情况定

                                                                                              八进制 : 0177.0.0.1

  • 修改自己域名的Address记录
  • http://0/flag.php  0在linux系统中会解析成127.0.0.1在windows中解析成0.0.0.0

 

PHP header 的7种用法
1. 跳转页面

header('Location:'.$url);  //Location和":"之间无空格。

 



2. 声明content-type

header('content-type:text/html;charset=utf-8');

 


3. 返回response状态码


header('HTTP/1.1 404 Not Found');

 



4. 在某个时间后执行跳转


header('HTTP/1.1 404 Not Found');

 



5. 控制浏览器缓存

    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

    header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");

    header("Cache-Control: no-cache, must-revalidate");

    header("Pragma: no-cache");

 


6. . 执行http验证

header('HTTP/1.1 401 Unauthorized');

header('WWW-Authenticate: Basic realm="Top Secret"');

 



7. 执行下载操作

header('Content-Type: application/octet-stream'); //设置内容类型

header('Content-Disposition: attachment; filename="example.zip"'); //设置MIME用户作为附件

header('Content-Transfer-Encoding: binary'); //设置传输方式

header('Content-Length: '.filesize('example.zip')); //设置内容长度

 

 

 

https://blog.csdn.net/wo41ge/article/details/108405130

ssrf漏洞详解https://www.cnblogs.com/happystudyhuan/p/11802961.html

SSRF知识点

 

 

上一篇:LinkedHashMap源码解析(jdk1.7之前)


下一篇:简单使用Nginx反向代理和负载均衡