(1).webshell概念

  webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器来访问asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的。

  顾名思义,“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。webshell常常被称为入侵者通过网站端口对网站服务器的某种程度上操作的权限。由于webshell其大多是以动态脚本的形式出现,也有人称之为网站的后门工具。

(2).攻击思路

  想要拿下一台服务器的权限,首先需要了解该服务器的端口、Web版本、操作系统版本,以此寻找漏洞;然后通过漏洞添加修改上传Webshell或其他非法文件(木马病毒等),拿到具有一定权限的身份;最后进行提权。

  漏洞公告网站:

    国家信息安全漏洞共享平台https://www.cnvd.org.cn/

    绿盟http://www.nsfocus.net/index.php?act=sec_bug

(3).展示webshell能够做到哪些

  注意:不要去下载现成的webshell,很有可能会出现后门里插后门的情况。

  搭建LNMP环境:源码安装LNMP。为了方便演示这里的php使用的是php-5.5.38。

  然后将webshell上传至服务器

[root@youxi1 ~]# ls /usr/local/nginx/html
50x.html index.html index.php webshell2.php

  然后使用浏览器登录,这里输入的密码是webshell的密码

  然后登录成功后会出现如下界面,可以看到文件名、权限、所有者,并且提供单独下载、拷贝、编辑、重命名、修改时间,以及打包下载选中的文件、删除选中的文件、创建文件和文件夹等。

  如果黑客拿到了mysql的root密码,还可以管理mysql,上传下载mysql数据,甚至执行一些Mysql命令。

  而且可以查看php的信息,以及执行php代码,甚至通过该服务器去连接其他服务器。

(4).如何预防webshell

  1、建议用户通过ftp来上传、维护网页,尽量不安装asp的上传程序。
  2、对asp上传程序的调用一定要进行身份认证,并只允许信任的人使用上传程序。
  3、asp程序管理员的用户名和密码要有一定复杂性,不能过于简单,还要注意定期更换。
  4、到正规网站下载程序,下载后要对数据库名称和存放路径进行修改,数据库名称要有一定复杂性。
  5、要尽量保持程序是最新版本。
  6、不要在网页上加注后台管理程序登陆页面的链接。
  7、为防止程序有未知漏洞,可以在维护后删除后台管理程序的登陆页面,下次维护时再通过上传即可。
  8、要时常备份数据库等重要文件。
  9、日常要多维护,并注意空间中是否有来历不明的asp文件。
  10、尽量关闭网站搜索功能,利用外部搜索工具,以防爆出数据。
  11、利用白名单上传文件,不在白名单内的一律禁止上传,上传目录权限遵循最小权限原则。
  从根本上解决动态网页脚本的安全问题,要做到防注入、防爆库、防COOKIES欺骗、防跨站攻击(xss)等等,务必配置好服务器FSO权限。最小的权限=最大的安全。防范webshell的最有效方法就是:可写目录不给执行权限,有执行权限的目录不给写权限。

(5).检测webshell

  希望不会用到,详见:https://www.freebuf.com/articles/web/183520.html

(6).扩展:nc命令

  如果原本没有nc命令,被黑客入侵后发现安装了该命令,一定需要注意,nc的其中一个功能是实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口并接受连接。(-l选项)

  详细可看:nc命令用法举例

参考:百度百科-webshell

   https://www.mozhedun.com/news/industry-news/57746.html

   https://www.cnblogs.com/l1pe1/p/9213060.html

   https://www.freebuf.com/articles/web/186298.html

websehll的使用和预防措施的更多相关文章

  1. [原创]内网渗透JSP webSehll连接工具

    工具: JspShellExec编译: VS2012  C# (.NET Framework v2.0)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.b ...

  2. XSS攻击(出现的原因、预防措施)

    XSS攻击(出现的原因.预防措施......)   验证XSS攻击重点不是去查找可输入哪些内容会出现什么样的bug就是测试XSS攻击,重点是了解它出现的原理,为什么会出现XSS攻击,导致一些问题出现? ...

  3. PHP的SQL注入攻击的技术实现以及预防措施

    最近在折腾 PHP + MYSQL 的编程.了解了一些 PHP SQL 注入攻击的知识,总结一下经验.在我看来,引发 SQL 注入攻击的主要原因,是因为以下两点原因: 1. php 配置文件 php. ...

  4. web安全 -- 常见攻击方法及预防措施

    一.sql注入 sql注入,是指攻击者在猜测出服务器上要执行sql后:通过输入数据,拼接原来要执行的sql而形成新的sql:从而到达改变原来查询的意义的目的. -- 原来sql select xxx ...

  5. PHP的SQL注入技术实现以及预防措施

    SQL 攻击(SQL injection,台湾称作SQL资料隐码攻击),简称注入攻击,是发生于应用程序之数据库层的安全漏洞.简而言之,是在输入的字符串之中注入SQL指 令,在设计不良的程序当中忽略了检 ...

  6. XSS攻击(出现的原因、预防措施......)

    验证XSS攻击重点不是去查找可输入哪些内容会出现什么样的bug就是测试XSS攻击,重点是了解它出现的原理,为什么会出现XSS攻击,导致一些问题出现?如何防御与解决XSS攻击?以下我将简单介绍以上提出的 ...

  7. 中国IT史上两大严重事故对我们的警醒及预防措施

    20190121 一,历史回顾:20150528携程运维大事故 2015年5月28日上午11点开始,携程旅行网官方网站突然显示404错误页,App也无法使用,业务彻底中断. 据称是因为乌云网公布了携程 ...

  8. Web系统大规模并发——秒杀与抢购 秒杀系统优化与预防措施

    电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们 ...

  9. XSS 和 CSRF简述及预防措施

    在 Web 安全领域中,XSS 和 CSRF 是最常见的攻击方式.本文将会简单介绍 XSS 和 CSRF 的攻防问题. 1. xss XSS,即 Cross Site Script,中译是跨站脚本攻击 ...

随机推荐

  1. BZOJ 2406 矩阵(二分+有源汇上下界可行流)

    题意 题解 二分答案+可行流判断. 模板题. CODE #include <cstdio> #include <cstring> #include <algorithm& ...

  2. 自定义菜单和高级接口-获取Access Token

    自定义菜单和高级接口都需要使用APPID和AppSecret来创建. 对应暂时没有这些权限的微信公众账号,开发者可以申请测试账号来体验和测试体验微信公众平台的所有高级接口的功能.链接 https:// ...

  3. js中检测类型问题

    <script>    // var str = '少壮不努力,老大徒伤悲';    // console.log(str instanceof String);    // consol ...

  4. flutter ListView 页面滚动组件

    ListView class A scrollable list of widgets arranged linearly. ListView is the most commonly used sc ...

  5. SaltStack 在 Windows 上的操作基础

    SaltStack 在 windows上的操作基础 1.删除文件: salt '172.16.3.11' file.remove 'D:\downup\111.msu' 2.删除文件夹 salt '1 ...

  6. 2D到3D视频转换 三维重建

    2D到3D视频转换(也称为2D到立体3D转换和立体转换)是将2D(“平面”)胶片转换为3D形式的过程,几乎在所有情况下都是立体声,因此它是创建图像的过程.每个眼睛来自一个2D图像. 内容 1概述 1. ...

  7. realloc()函数

    原型:extern void *realloc(void *mem_address, unsigned int newsize); 参数: mem_address: 要改变内存大小的指针名 newsi ...

  8. golang-切片

    切片练习 package main import "fmt" /*func main() { arr := [10]int {1, 2, 3, 4, 5, 6, 7, 8, 9, ...

  9. Jmeter 5.1实现图片上传接口测试

    背景: 项目过程中需要抓取接口进行图片上传的接口测试,所有上传功能大同小异,无非就是参数内容不同,此处记录一下,为其他上传做一些参考 1.通过fiddler抓取到的参数如下: Content-Disp ...

  10. Codeforces Round #576 (div.1 + div.2)

    Div2 A 长度为\(n(n≤10^5)\)的数组,每个元素不同,求有多少个位置\(d\)满足\(d - x \le j < d \And d < j \le d + y a_d< ...