Quantcast
Channel: AutoIt v3 - General Help and Support
Viewing all articles
Browse latest Browse all 12506

Crack My Password :)

$
0
0
This was simply an idea i came up with this morning. In the past i have seen a few topics of people asking how can they hide passwords, the normal answer being encrypting it. Ofc if a script is decomplied, then u can just decript the password.

So i wrote this.

[ autoit ]         
#include <Crypt.au3> #include <String.au3> $Input = StringRegExpReplace(_StringToHex(InputBox("Password Prompt", "Enter Password", "", "*", 125, 125, @DesktopWidth/2-125, @DesktopHeight/2-125)), "[^0-9]", '') $Key = StringRegExpReplace(_GetHardwareID(7), "[^0-9]", '') If StringTrimRight($Input * $key, 5) = '4.4603447081791' Then ConsoleWrite('You cracked my password :(') Else ConsoleWrite('Better Luck Next Time' & @CRLF) EndIf ; #FUNCTION# ==================================================================================================================== ; Name ..........: _GetHardwareID ; Description ...: Generates a unique hardware identifier (ID) for the local computer. ; Syntax ........: _GetHardwareID([$iFlags = Default]) ; Parameters ....: $iFlags - [optional] The flags that specifies what information would be used to generate ID. ; This parameter can be one or more of the following values. ; ; $UHID_MB (0) ; Uses information about your motherboard. This flag is used by default regardless of whether specified or not. ; ; $UHID_BIOS (1) ; Uses information about the BIOS. ; ; $UHID_CPU (2) ; Uses information about the processor(s). ; ; $UHID_HDD (4) ; Uses information about the installed hard drives. Any change in the configuration disks will change ID ; returned by this function. Taken into account only non-removable disks. ; ; $UHID_All (7) ; The sum of all the previous flags. Default is $UHID_MB (0). ; ; $fIs64Bit - [optional] Search the 64-bit section of the registry. Default is dependant on AutoIt bit version. ; Note: 64-bit can't be searched when running the 32-bit version of AutoIt. ; Return values..: Success - The string representation of the ID. @extended returns the value that contains a combination of flags ; specified in the $iFlags parameter. If flag is set, appropriate information is received successfully, ; otherwise fails. The function checks only flags that were specified in the $iFlags parameter. ; Failure - Empty string and sets @error to non-zero. ; Author.........: guinness with the idea by Yashied (_WinAPI_UniqueHardwareID - WinAPIEx.au3) ; Modified ......: Additional suggestions by SmOke_N. ; Remarks .......: The constants above can be found in APIConstants.au3. It also requires Crypt.au3 to be included. ; Example........: Yes ; =============================================================================================================================== Func _GetHardwareID($iFlags = Default, $fIs64Bit = Default) Local $sBit = '' If @AutoItX64 Then $sBit = '64' EndIf If Not ($fIs64Bit = Default) Then $sBit = '' ; Reset to 32-bit. If $fIs64Bit And @AutoItX64 Then $sBit = '64' ; Use 64-bit if $fIs64Bit is True and AutoIt is a 64-bit process. EndIf EndIf If $iFlags = Default Then $iFlags = 0 EndIf Local $aSystem[4] = [3, 'Identifier', 'VideoBiosDate', 'VideoBiosVersion'], _ $iResult = 0, _ $sHKLM = 'HKEY_LOCAL_MACHINE' & $sBit, $sOutput = '', $sText = '' For $i = 1 To $aSystem[0] $sOutput &= RegRead($sHKLM & '\HARDWARE\DESCRIPTION\System\', $aSystem[$i]) Next $sOutput &= @CPUArch $sOutput = StringStripWS($sOutput, 8) If BitAND($iFlags, 0x0001) Then ; $UHID_BIOS Local $aBIOS[6] = [5, 'BaseBoardManufacturer', 'BaseBoardProduct', 'BaseBoardVersion', 'BIOSVendor', 'BIOSReleaseDate'] $sText = '' For $i = 1 To $aBIOS[0] $sText &= RegRead($sHKLM & '\HARDWARE\DESCRIPTION\System\BIOS\', $aBIOS[$i]) Next $sText = StringStripWS($sText, 8) If $sText Then $iResult += 0x0001 $sOutput &= $sText EndIf EndIf If BitAND($iFlags, 0x0002) Then ; $UHID_CPU Local $aProcessor[5] = [4, 'ProcessorNameString', '~MHz', 'Identifier', 'VendorIdentifier'] $sText = '' For $i = 1 To $aProcessor[0] $sText &= RegRead($sHKLM & '\HARDWARE\DESCRIPTION\System\CentralProcessor\0\', $aProcessor[$i]) Next For $i = 1 To $aProcessor[0] $sText &= RegRead($sHKLM & '\HARDWARE\DESCRIPTION\System\CentralProcessor\1\', $aProcessor[$i]) Next $sText = StringStripWS($sText, 8) If $sText Then $iResult += 0x0002 $sOutput &= $sText EndIf EndIf If BitAND($iFlags, 0x0004) Then ; $UHID_HDD $sText = '' Local $aDrives = DriveGetDrive('FIXED') If @error = 0 Then For $i = 1 To $aDrives[0] $sText &= DriveGetSerial($aDrives[$i]) Next EndIf $sText = StringStripWS($sText, 8) If $sText Then $iResult += 0x0004 $sOutput &= $sText EndIf EndIf Local $sHash = StringTrimLeft(_Crypt_HashData($sOutput, $CALG_MD5), 2) If $sHash = '' Then Return SetError(4, 0, '') EndIf Return SetExtended($iResult, StringRegExpReplace($sHash, '(\w{8})(\w{4})(\w{4})(\w{4})(\w{12})', '\{\1-\2-\3-\4-\5\}')) EndFunc ;==>_GetHardwareID

So, is anyone able to crack this and figure out my password? :)

*Edit. I do ask no one flames this topic, i know secuirty topics are normally disliked due to the amount over time and the generally fruitfulless of them :) I also know if someone decomplies a script, they can simply remove any secuirty lines such as the "if" statement so it just runs but that is not the purpose :) Its to hide a password, so even if they get the script and can make it work. They dont get private data, at lest in theory :)

**Edit. If someone does figure out how to crack it, dont say how you did it :) Just post the password proving u have :)

Viewing all articles
Browse latest Browse all 12506

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>