一、什么是IPC
进程间通信(IPC,Inter-Process Communication),指至少两个进程或线程间传送数据或信号的一些技术或方法。进程是计算机系统分配资源的最小单位(严格说来是线程)。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。
二、什么是空会话
空会话是在没有信任的情况下与服务器建立的会话(即未提供用户名与密码),但根据WIN2000(以win2000为例)的访问控制模型,空会话的建立同样需要提供一个令牌,可是空会话在建立过程中并没有经过用户信息的认证,所以这个令牌中不包含用户信息,因此,这个会话不能让系统间发送加密信息,但这并不表示空会话的令牌中不包含安全标识符SID(它标识了用户和所属组),对于一个空会话,LSA提供的令牌的SID是S-1-5-7,这就是空会话的SID。
IPC$是系统默认共享的统称,Admin$是系统默认共享的一种,叫系统目录共享。默认共享包括:所有的逻辑共享(c$,d$,e$……)和系统目录winnt或windows(admin$)共享。
net use 查看IPC$的所有连接
net use * /del /y 删除所有IPC$连接
net use \\IP\ipc$ /del #删除一个ipc$连接
net use \\IP\ipc$ "" /user:"" #建立空连接
net use \\IP\ipc$ "密码" /user:"用户名" #建立非空连接
net share #默认win下的共享
net share ipc$ /delete #关闭ipc默认共享
net share c$ /delete #关闭C盘默认共享
net view \\ip #显示远程主机的共享资源列表
https://www.cnblogs.com/mamiyiya777/p/11017875.html
Windows认证体系—NTLM认证
本地认证
Windows不存储用户的明文密码,它会将用户的明文密码经过加密后存储在 SAM (Security Account Manager Database,安全账号管理数据库)中。
SAM文件的路径是 %SystemRoot%\system32\config\sam
在进行本地认证的过程中,当用户登录时,系统将用户输入的明文密码加密成 NTLM Hash,与 SAM数据库中的 NTLM Hash 进行比较,从而实现认证
winlogon.exe -> 接收用户输入 -> lsass.exe -> (认证)
首先,用户注销、重启、锁屏后,操作系统会让 winlogon显示登录界面,也就是输入框,接收输入后,将密码交给 lsass进程,这个进程中会存一份明文密码,将明文密码加密成NTLM Hash,对比 SAM数据库中的 Hash进行验证
NTLM 认证方式
https://zhuanlan.zhihu.com/p/79196603