|
现在只对常读和星标的公众号才展示大图推送,建议大家把潇湘信安“设为星标”,否则可能看不到了!
0x00 前言
0x01 代码理解
for
/f
"skip=9 tokens=1,2 delims=:"
%i in (
'netsh wlan show profiles'
)
do
@echo %j | findstr -i -v echo | netsh wlan show profiles %j key=clear
0x02 问题简述
“Administrator”的 iPhone
就这个Wi-Fi不行,猜测大概率是因为这个Wi-Fi的SSID名称中存在空格或大写双引号的问题,在Windows命令行下只要有空格都得放“双引号”里才行。
注:这里说的命令行有空格主要指的是执行命令中的路径和要提取的某些字符中存在空格等情况,而不是所有带空格命令,如:net user、qery user等。
不加双引号失败:
netsh wlan
show
profiles
“Administrator”的 iPhone
加了双引号成功:
netsh wlan
show
profiles
"“Administrator”的 iPhone"
0x03 简单测试
%j
引起来输出看下,可以看到加双引号后输出的SSID名称左边会多出个空格,所以我们在前边或后边即使用双引号将%j
引起来都不行,如何解决呢?for
/f
"skip=9 tokens=1,2 delims=:"
%i in (
'netsh wlan show profiles'
)
do
@echo
"%j"
| findstr -i -v echo | netsh wlan show profiles
"%j"
key=clear
0x04 解决方案
%s
引起来即可。for
/f
"skip=9 tokens=1,2 delims=:"
%i in (
'netsh wlan show profiles'
)
do
@echo %j |
for
/f
"tokens=*"
%s in (
"%j"
)
do
@echo %s
for
/f
"skip=9 tokens=1,2 delims=:"
%i in (
'netsh wlan show profiles'
)
do
@echo %j |
for
/f
"tokens=*"
%s in (
"%j"
)
do
@echo %s | netsh wlan show profiles
"%s"
key=clear
如果我们要将这个命令集成到CobaltStrike插件使用,还得注意要对该命令中的双引号使用反斜杠进行转义下,如:
"%s"
,否则可能无法识别该命令。
for
/f
"skip=9 tokens=1,2 delims=:"
%i
in
(
'netsh wlan show profiles'
)
do
@echo %j |
for
/f
"tokens=*"
%s
in
(
"%j"
)
do
@echo %s | netsh wlan show profiles
"%s"
key=clear
0x05 文末总结
https:
//github.com/r3nhat/SharpWifiGrabber
原文始发于微信公众号(潇湘信安):Netsh获取WIFI密码SSID空格问题
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论