networkInterfaces() sanitizing SSID names (windows)

This commit is contained in:
Sebastian Hildebrandt
2024-12-09 09:54:15 +01:00
parent 51c7698b91
commit f7af0a67b7
4 changed files with 20 additions and 4 deletions
+13 -3
View File
@@ -348,7 +348,7 @@ function getWindowsWirelessIfaceSSID(interfaceName) {
try {
const result = execSync(`netsh wlan show interface name="${interfaceName}" | findstr "SSID"`, util.execOptsWin);
const SSID = result.split('\r\n').shift();
const parseSSID = SSID.split(':').pop();
const parseSSID = SSID.split(':').pop().trim();
return parseSSID;
} catch (error) {
return 'Unknown';
@@ -400,8 +400,18 @@ function getWindowsIEEE8021x(connectionType, iface, ifaces) {
try {
const SSID = getWindowsWirelessIfaceSSID(iface);
if (SSID !== 'Unknown') {
i8021xState = execSync(`netsh wlan show profiles "${SSID}" | findstr "802.1X"`, util.execOptsWin);
i8021xProtocol = execSync(`netsh wlan show profiles "${SSID}" | findstr "EAP"`, util.execOptsWin);
let ifaceSanitized = '';
const s = util.isPrototypePolluted() ? '---' : util.sanitizeShellString(SSID);
const l = util.mathMin(s.length, 2000);
for (let i = 0; i <= l; i++) {
if (s[i] !== undefined) {
ifaceSanitized = ifaceSanitized + s[i];
}
}
i8021xState = execSync(`netsh wlan show profiles "${ifaceSanitized}" | findstr "802.1X"`, util.execOptsWin);
i8021xProtocol = execSync(`netsh wlan show profiles "${ifaceSanitized}" | findstr "EAP"`, util.execOptsWin);
}
if (i8021xState.includes(':') && i8021xProtocol.includes(':')) {