数据解析过程

规律:

  • 每一个String Binding都以\x07\x00开头。
  • 每一个StringBinding都以\x00\x00分割,一直到第一个Security Binding是\x09\x00开头。

因此,当recv的数据直到\x09\x00结束,开头就比较好办了,第四个数据包起始位置往后偏移42个字节就可以到达第一个String Binding。
QQ拼音截图20200719163800

C++

OXID_Find by C++(多线程) 通过OXID解析器获取Windows远程主机上网卡地址

https://github.com/uknowsec/OXID_Find

1
2
3
4
5
6
> OXID_Find.exe

Author: Uknow
Github: https://github.com/uknowsec/OXID_Find
usage: OXID_Find.exe -i 192.168.0.1
usage: OXID_Find.exe -c 192.168.0.1/24

Csharp

OXID_Find by Csharp(多线程) 通过OXID解析器获取Windows远程主机上网卡地址 From @RcoIl

学习@RcoIl师傅的代码SharpOXID-Find,加了个多线程,支持cidr格式传入ip地址。

强推一波@RcoIl师傅charp代码库CSharp-Tools

https://github.com/uknowsec/SharpOXID-Find

1
2
3
4
> SharpOXID-Find.exe

usage: SharpOXID_Find.exe -i 192.168.0.1
usage: SharpOXID_Find.exe -c 192.168.0.1/24

Python

https://github.com/Rvn0xsy/OXID-Find/

1
2
3
4
> python2 finsubnet.py

usage: finsubnet.py [-h] -i IP [-t THREADS] [-o OUTPUT]
finsubnet.py: error: argument -i/--ip is required

References

https://payloads.online/archivers/2020-07-16/1