获取电脑已连接过的wifi密码(代码分享)
本帖最后由 YWQ8 于 2023-5-19 00:35 编辑主要就是用了“netsh wlan show profiles”命令获取配置信息,然后“netsh wlan show profiles name="xxx" key=clear”查看,思路很简单。#include<bits/stdc++.h>
using namespace std;
string cmd(const string&line)
{
FILE*f=_popen(line.c_str(),"r"); //popen开一个shell通道
string res;
char b;
while(fgets(b,sizeof b,f))
{
res+=b;
}
_pclose(f);
return res;
}
int main()
{
string line="netsh wlan show profiles"; //获取连接过的wifi的ssid
string a=cmd(line);
int cnt=a.size();
bool g=false;
int con1=0,con2=0;
vector<string>pu;
for(int i=0;i<cnt;i++)
{
if(a==':')
{
if(!g)
{
g=true;
cout<<"\n\n\n";
continue;
}
int l=i+=2;
while(a!=10)i++;
string t=a.substr(l,i-l);
string kt=cmd("netsh wlan show profiles name="+("\""+t+"\"")+" key=clear");
con1++;
//cout<<t<<endl;
//cout<<kt<<endl;
int cnt=kt.size(),r=0;
int d[]={-71,-40,-68,-4,-60,-38,-56,-35}; //“关键内容”转成int
bool h=false;
for(int j=0;j<cnt;j++)
{
if(kt==d) //比对找到密码所在
{
r++;
if(r==7)
{
while(kt!=':')j++;
int l=j+=2;
while(kt!=10)j++;
cout<<"\t\t"<<t<<":"<<kt.substr(l,j-l)<<endl;
con2++;
h=true;
break;
}
}
else r=0;
}
if(!h)pu.push_back(t);
}
}
printf("\n\t 共查询到%d条记录,已打印%d条。\n",con1,con2);
printf("\n\t 以下wifi无密码:\n");
for(auto i:pu)cout<<"\n\t\t\t"<<i<<endl;
//cout<<a;
}
我很赞同,但是第13行return ret;返回错了,应该是 返回 res 吧
学习了,举一反三上python也能跑,具体来说,执行以下两个 `PowerShell`命令:
`netsh wlan show profiles`:此命令列出了所有已连接过的 WiFi 的配置文件名称。
`netsh wlan show profile name="{profile_name}" key=clear`:此命令获取名为 `profile_name` 的 WiFi 配置文件的详细信息,包括密码。
import subprocess
# Run the PowerShell command to get the list of all Wi-Fi profiles
command = 'netsh wlan show profiles'
profiles = subprocess.check_output(['powershell', '-Command', command]).decode('utf-8')
# Loop through all profiles and get the password for each one
for profile in profiles.split('\n'):
if 'All User Profile' in profile:
ssid = profile.split(':').strip()
command = f'netsh wlan show profile name="{ssid}" key=clear'
profile_info = subprocess.check_output(['powershell', '-Command', command]).decode('utf-8')
if 'Key Content' in profile_info:
password = profile_info.split('Key Content').split(':').strip()
print(f'SSID: {ssid}')
print(f'Password: {password}\n')
电脑不安全 手机上本来也有这种软件,但是现在软件限制越来越多了。。。。 feiyuefei 发表于 2023-5-18 17:49
手机上本来也有这种软件,但是现在软件限制越来越多了。。。。
请问手机上有不需要root的这种软件吗?求PM一个。 的确可以,支持下,感谢分享。 牛啊大佬 想问一下手机上曾经连接过的wifi详细的连接时间怎么查看? 手机上可以提取吗? 学习了, 试一下看看怎么样, 谢谢分享
页:
[1]
2