CTF从入门到提升(十六)代码执行相关函数及例题分享
作者: 日期:2019年09月18日 阅:7,237

代码/命令执行

比如说能够对一个php的站点,控制php代码,那么我们就把它划分为代码执行,如果能执行网站所在服务器中的命令,我们这就把它划分为命令执行,因为它执行的是系统命令。

一般来说代码或命令执行漏洞都存在一个相关函数,通过控制部分参数传递到函数中实现命令执行。说到CTF题型中的这种攻击手段,一定要知道哪些函数能够被利用需要我们去关注的,首先会带大家了解一些代码注入的相关函数,例如执行php代码的一些函数。

相关函数(代码注入)

1eval 函数

这个函数能够把字符串当成代码来执行,以分号结尾可以理解为是完整语句,即使报错加上分号之后语句也会成功执行。

2Assert

3call_user_func

注意不是所有的函数都能去调用,官方手册上也没有明确哪些函数可以调用哪些不能。

4call_user_func_array

5create_function

6preg_replace

这个函数比较早,5.5中它已经被弃用了,但是你一样可以去使用它,但是在7.0之后,你就没办法去调用它,它已经不存在了。

7array_map

8Usort

9{php代码}

举栗子 

price是中间可控的,我们这里就控制它。

我们传的是123,实际上echo里的语句是name的价格是123,分号后面是不存在的,实际传递值的时候,是不用去传引号的,我们把引号去掉就能实现命令执行了。

内容来自《CTF从入门到提升

关键词:

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章