代码执行

其实,代码执行是一个很广阔的概念。

如,SQL注入(SQL代码执行),eval/assert执行(脚本代码执行),xss脚本攻击(js代码执行/html代码执行),而system/exec/shell_ exec/ passthru执行,则应属于命令执行的范畴了。

1、 SQL代码执行

执行SQL语句:select host,user,password from mysql.user where user=‘root‘;

MySQL返回结果如下:

+-----------+------+-------------------------------------------+

| host      | user | password                                  |

+-----------+------+-------------------------------------------+

| localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |

| 127.0.0.1 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |

+-----------+------+-------------------------------------------+

2 rows in set (0.00 sec)

这就是SQL代码执行,只是,在实际环境中,SQL代码与脚本代码混在了一起。

2、 eval/assert执行

<?php

$a = $_GET[‘a‘];

eval ($a);

//assert ($a);

?>

开启Firefox,输入:http://localhost:81/code_exec.php?a=phpinfo();

Webserver返回如下信息:

这就是脚本代码执行,在此,eval/assert函数,执行效果一致。

3、Js/html代码执行

<script>alert(document.cookie)</script> //js代码执行

<img src=1 onerror=alert(document.cookie) /> <!--html代码执行

执行效果分别如下:

//js代码执行

<!--html代码执行

因为此时,我本地并没有任何cookie,所以,弹出来的对话框cookie为空

这即是js/html代码执行,这是xss脚本攻击的基础,也是web前端安全的基础,建议阅读余弦的书籍:《web前端黑客技术揭秘》。

时间: 2024-11-09 09:00:02

代码执行的相关文章

debian内核代码执行流程(一)

本文根据debian开机信息来查看内核源代码. 系统使用<debian下配置dynamic printk以及重新编译内核>中内核源码来查看执行流程. 使用dmesg命令,得到下面的开机信息: [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Linux version 3.2.57 ([email protected]) (gcc versio

Office CVE-2017-8570远程代码执行漏洞复现

实验环境 操作机:Kali Linux IP:172.16.11.2 目标机:windows7 x64 IP:172.16.12.2 实验目的 掌握漏洞的利用方法 实验工具 Metaspliot:它是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报.这些功能包括智能开发,代码审计,Web应用程序扫描,社会工程,团队合作. 实验内容 Office CVE-2017-8570 CVE-2017-8570漏

CVE-2017-7269—IIS 6.0 WebDAV远程代码执行漏洞分析

漏洞描述: 3月27日,在Windows 2003 R2上使用IIS 6.0 爆出了0Day漏洞(CVE-2017-7269),漏洞利用PoC开始流传,但糟糕的是这产品已经停止更新了.网上流传的poc下载链接如下. github地址:https://github.com/edwardz246003/IIS_exploit 结合上面的POC,我们对漏洞的成因及利用过程进行了详细的分析.在分析过程中,对poc的exploit利用技巧感到惊叹,多次使用同一个漏洞函数触发,而同一个漏洞同一段漏洞利用代码

bash代码执行-选择执行 if or case

过程式编程语言代码执行顺序 顺序执行 逐条逐条执行 选择执行 代码有一个分支,条件满足是才会执行:两个或以上的分支只会执行其中一个分支 循环执行 代码片段(循环体)执行0,1多个来回 选择执行是指代码有一个分支,条件满足时才会执行 选择执行:   1.if语句      单分支if语句 if 测试条件:then 代码分支 fi [[email protected] testdir]# vim if1.sh #!/bin/bash #snowbamboo #2016.08.19 #单分支if语句脚

关于发布的CVE-2013-2251漏洞,strust远程代码执行漏洞

(*该漏洞影响版本:Struts 2.0.0 – Struts 2.3.15) (*该博客仅仅只是记录我工作学习时遇到的问题,仅供参考!) (*如果,描述中可能存在错误,请多指教!) 在昨天在对我目前负责的那个项目进行日常维护的时候,系统被别人攻克,上传了一个.txt文件,他人可以直接访问这个项目下txt文件,就可以获取到txt文件内的内容. 首先,介绍下我目前维护的项目,使用的是strust2.1+hibernate3.0架构模式,也就是javaweb+SSH框架,不过为了简化,并没有添加sp

黄聪:PHP 防护XSS,SQL,代码执行,文件包含等多种高危漏洞

版本:v1.1更新时间:2013-05-25更新内容:优化性能功能说明: 可以有效防护XSS,sql注射,代码执行,文件包含等多种高危漏洞. 使用方法: 将waf.php传到要包含的文件的目录 在页面中加入防护,有两种做法,根据情况二选一即可: a).在所需要防护的页面加入代码就可以做到页面防注入.跨站 复制代码 require_once('waf.php'); 如果想整站防注,就在网站的一个公用文件中,如数据库链接文件config.inc.php,来调用本代码.常用php系统添加文件 PHPC

Android WebView远程代码执行漏洞简析

0x00 本文参考Android WebView 远程代码执行漏洞简析.代码地址为,https://github.com/jltxgcy/AppVulnerability/tree/master/WebViewFileDemo.下面我们分析代码. 0x01 首先列出项目工程目录: MainActivity.java的代码如下: public class MainActivity extends Activity { private WebView webView; private Uri mUr

第一章 Java代码执行流程

说明:本文主要参考自<分布式Java应用:基础与实践> 1.Java代码执行流程 第一步:*.java-->*.class(编译期) 第二步:从*.class文件将其中的内容加载到内存(类加载)(运行期) 第三步:执行代码(运行期) 2.代码编译 javac命令将源码文件编译为*.class文件. 后边将介绍: javac将*.java编译成*.class文件的过程 class文件的文件格式,以及其存储的内容 3.类加载 主要是指将*.class文件加载到JVM,并形成Class对象的机

当C#中带有return的TryCatch代码遇到Finally时代码执行顺序

编写的代码最怕出现的情况是运行中有错误出现,但是无法定位错误代码位置.综合<C#4.0图解教程>,总结如下: TryCatchFinally用到的最多的是TryCatch,Catch可以把Try代码块的错误捕捉到,并对错误进行后续处理.这一点比较常见. 现在要讨论的是如果Try和Catch代码块有return时代码的执行顺序.众所周知,return的作用是退出当前函数,不执行return后面的代码.那么问题来了:如果return出现在Try或catch代码块中,并且return后面还有代码,则

Apache ActiveMQ Fileserver远程代码执行漏洞

扫端口的时候遇到8161端口,输入admin/admin,成功登陆,之前就看到过相关文章,PUT了一句话上去,但是没有什么效果,于是本地搭建了一个环境,记录一下测试过程. 环境搭建: ActiveMQ 5.1.0 下载地址:http://activemq.apache.org/activemq-510-release.html 解压后,双击运行abtivemq.bat运行.(进入bin目录,根据自己的操作系统选择win32或win64,5.1.0只有win32目录) 访问8161端口: 漏洞利用