实验目的

1.了解eval注入的概念 2.了解eval注入攻击的方式 3.掌握防范攻击的方法

实验原理

1.了解eval注入的概念 2.了解eval注入攻击的方式 3.掌握防范攻击的方法

实验内容

1.了解eval注入的概念

2.了解eval注入攻击的方式

3.掌握防范攻击的方法

实验环境描述

1、 学生机与实验室网络直连; 2、 VPC1与实验室网络直连; 学生机与VPC1物理链路连通;

实验步骤

1.打开虚拟机,输入用户名和密码,用户为admin 密码为 123456

2.进入虚拟机后,首先打开PHPstudy工具,手动开启MySQL与apache服务

3.打开浏览器,输入http://localhost:8080/example_code/

4.找到“(2)eval注入攻击(Eval Injection )”项,并点击打开。

5.修改php.ini配置文件,打开php.ini文件,搜索register_globals 把register_globals = off 改为 on 保存退出

6.重新启动apache服务。双击桌面phpstudy图标,停止服务然后再开启服务

7.点击浏览器中的演示1 ,查看地址栏后的参数,那么变量$myvar的值就会是10

8.点击 攻击1 , 黑客可以使用下面的URI来进行eval注入攻击: 结果eval函数会执行下面的代码段:'dir c:'

9.点击防护1 用post获得数据,防止url来进行注入攻击。

10.点击演示2

11.点击攻击2, 读取URL参数的值,然后使用可变变量来重新设定变量的值 黑客可以使用下面红框中的URI来进行攻击:

12.点击防护2, 攻击没有起到作用

13.点击演示3

14.点击攻击3 ,读取URL参数Month的值,来替换$string字符串中的“August”子串 黑客可以使用下面的URI来进行攻击: ex2-3.php?Month=phpinfo(); 结果会执行下列的preg_replace函数: preg_replace("/^/e", "phpinfo();", $string); 执行phpinfo()函数来显示服务器的信息

15.点击防护3

16.点击演示4,如图所示: func是一个自定义的函数名称

17.点击攻击4 获取 php配置信息。

18.点击防护4,防止 获取php配置信息

19.实验完毕,关闭虚拟机和所有窗口。

HTTP攻击与防护-函数注入攻击的更多相关文章

  1. HTTP攻击与防范-命令注入攻击

    实验目的 1.了解命令注入攻击攻击带来的危险性. 2.掌握命令注入攻击攻击的原理与方法 3.掌握防范攻击的方法 实验原理 1.了解命令注入攻击攻击攻击带来的危险性. 2.掌握命令注入攻击攻击攻击的原理 ...

  2. web攻击之三:SQL注入攻击的种类和防范手段

    观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的.虽然前面有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施. ...

  3. Spring cloud微服务安全实战-3-2 第一个API及注入攻击防护

    先来写一些用户的基础数据的管理的api.就是用户的基本的增删改查.用spring boot可以很容易的写出这种api 首先新建maven的项目 依赖关系 引入依赖.用最新的spring boot ht ...

  4. XSS/CSRF跨站攻击和防护方案

    Xss(Cross Site Scripting 跨站脚本攻击)/CSRF(Cross-site request forgery 跨站请求伪造),它与著名的SQL注入攻击类似,都是利用了Web页面的编 ...

  5. 注入攻击-SQL注入和代码注入

    注入攻击 OWASP将注入攻击和跨站脚本攻击(XSS)列入网络应用程序十大常见安全风险.实际上,它们会一起出现,因为 XSS 攻击依赖于注入攻击的成功.虽然这是最明显的组合关系,但是注入攻击带来的不仅 ...

  6. php过滤提交数据 防止sql注入攻击

    规则 1:绝不要信任外部数据或输入 关于 Web 应用程序安全性,必须认识到的第一件事是不应该信任外部数据.外部数据(outside data) 包括不是由程序员在 PHP 代码中直接输入的任何数据. ...

  7. SQL注入攻击[详解]

    SQL注入攻击是黑客对数据库进行攻击的常用手段之一.随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多.但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候, ...

  8. SQL注入攻击三部曲之入门篇

    SQL注入攻击三部曲之入门篇 服务器安全管理员和攻击者的战争仿佛永远没有停止的时候,针对国内网站的ASP架构的SQL注入攻击又开始大行其道.本篇文章通过SQL注入攻击原理引出SQL注入攻击的实施方法, ...

  9. SQL注入攻击的常见方式及测试方法

    本文主要针对SQL注入的含义.以及如何进行SQL注入和如何预防SQL注入让小伙伴有个了解.适用的人群主要是测试人员,了解如何进行SQL注入,可以帮助我们测试登录.发布等模块的SQL攻击漏洞,至于如何预 ...

随机推荐

  1. 集合框架-TreeSet集合-二叉树

    1 package cn.itcast.p5.treeset.demo; 2 3 import java.util.Iterator; 4 import java.util.TreeSet; 5 6 ...

  2. 集合框架-工具类-Collection-toArray方法

    1 package cn.itcast.p3.toolclass.arrays.demo; 2 3 import java.util.ArrayList; 4 import java.util.Arr ...

  3. java输入年份和月份,输出天数

    import java.util.*; public class Demo { public static void main(String[] args){ int days = 0; Scanne ...

  4. JavaScripts之柯里化与偏函数

    参考资料:https://github.com/mqyqingfeng/Blog/issues/42 柯里化(Currying): 定义:柯里化是表示将某个多参数的函数转换为一系列只有一个参数的函数的 ...

  5. Python中列表操作函数append的浅拷贝问题

    L=int(input())#L位数N=int(input())#N进制row=[]list1=[]for i in range(1,N): row.append(1)list1.append(row ...

  6. 鸿蒙轻内核源码分析:文件系统LittleFS

    摘要:本文先介绍下LFS文件系统结构体的结构体和全局变量,然后分析下LFS文件操作接口. 本文分享自华为云社区<# 鸿蒙轻内核M核源码分析系列二一 02 文件系统LittleFS>,作者: ...

  7. ARC084F - XorShift

    有两种解法,这里都放一下. 解法一 首先易知异或运算可以视作是 \(\mathbb{F}_2\) 意义下的每一位独立的加法. 因此我们可以考虑对于每个二进制数 \(s\) 构造一个多项式 \(F(x) ...

  8. AT2689 [ARC080D] Prime Flip

    简要题解如下: 区间修改问题,使用差分转化为单点问题. 问题变成,一开始有 \(2n\) 个点为 \(1\),每次操作可以选择 \(r - l\) 为奇质数的两个点 \(l, r\) 使其 ^ \(1 ...

  9. CF Round #669 Div2

    A 可以发现不论往怎样一个串往后加上两个 \(0\) 或两个 \(1\) 其奇数位和偶数位上的差值都是相同的.因此我们两位两位考虑这个 \(01\) 串,对于相邻两位相同那么直接留下,否则留下 \(0 ...

  10. eclipse的web项目导入IDE报错

    问题:eclipse的web项目导入IDE报错 第一个问题: 解决:点击enable即可 第二个问题: 解决: 解决方法: 切换文件的编码 : from UTF-8 to GBK to UTF-8 参 ...