4 posts in this topic
I can not do anything with any user in the "Local Users Group"
I tried from my account but I could not change my password (ie set new password)!
But I was able to activate the Administrator account and I logged into the Administrator account and still could not do anything with my account! But I can set the password and disable the Administrator account from my account or Administrator.
Any ideas? (Ignore the click on the Sign-in option in the Change Accout settings.)
I'm a command-line kind of guy, and I write scripts primarily for myself. Since many websites nowadays require strong passwords, I thought I'd write a simple password generator in AutoIt. I know that AutoIt mavens have written more elaborate pw generators; I offer mine for what it's worth. The compiled script, GenPass.exe, can be downloaded here. See below for Help text and source. Enjoy!
2017-05-06: Default password changed to variable length of 13-22 characters; argument "1" no longer supported
When compiled as GenPW.exe, password is sent directly to the clipboard, no message box unless password generation fails.
2017-05-05: Correction to bypass password generation if argument is ?|H|h
2017-05-03: Added special argument 1 to generate a password of variable length (10-18 characters) including two (2) separator characters
2017-05-02: Added option /S to set a (persistent) randomization seed
GenPass.exe|GenPW.exe -- CLD rev. 2017-05-06
Generate a strong password and save it to the Windows clipboard
Note: GenPW.exe has the same functionality as GenPass.exe, but
sends the generated password directly to the clipboard.
No message box is displayed (unless password generation fails).
"Strong" means that the password contains random combinations of
alphnumeric characters, including at least one uppercase letter
(A-N,P-Z), one lowercase letter (a-k,m-z), and one number (0-9).
(Generated passwords do not use uppercase O or lowercase l as
these characters are easily confused with the numbers 0 and 1.)
The length of the password is up to you (see Usage, below),
but needless to say, the longer, the stronger.
By default, GenPass generates a strong password of between 13
and 22 characters that includes two of the following separator
characters: $%&()*+,-./:;@_. Alternatively, you can supply a
command-line argument in which any number n from 1 to 9 stands
for a random sequence of alphanumeric characters of length
n, and any other character stands for itself. Thus, you can
include fixed words and other characters, such as separators,
in the generated password. Spaces in the argument are converted
to underscores. Here are some examples:
Usage Sample output
GenPass 9 frdhPYDs9
GenPass 58 weoXYHKxDI1uQ
GenPass 5.5 UfA6j.43VBB
GenPass 3-4-3 0I0-6gq4-njc
GenPass 5,3.7 I2FSR,tRZ.fjeIsFy
GenPass 3)5(3 UMf)m8513(CBq
GenPass 3[haha]3 yLa[haha]P3y
GenPass Yes way5 Yes_way1BsUh
Seed Option (/S)
Adding switch /S to the command-line argument causes GenPass to
set a seed for the random generation of password characters. A
bare /S sets a randomized seed which is written to disk in a file
named GenPass.rnd; this seed is used for all subsequent launches
of GenPass with the bare /S option. Alternatively, you can specify
a seed (range -2^31 to 2^31-1) on the command line with /S [seed].
Here are some examples:
GenPass /S 33.3333
GenPass 5,5,5 /S
GenPass 5,5,5 /S 33.3333
Note that any subsequent launch of GenPass without the /S option
will cause GenPass.rnd to be deleted.
#Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Outfile=GenPass.exe #AutoIt3Wrapper_UseUpx=y #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #cs GENPASS.AU3 -- AutoIt v3 CLD rev.2017-05-05 ------------------ Generate a strong password and save it to the clipboard >> Command GenPass ? for detailed help << ------------------------------------------------------- #ce #include <Clipboard.au3> #include <FileConstants.au3> #include <MsgBoxConstants.au3> #include <StringConstants.au3> AutoItSetOption("WinTitleMatchMode", -4) FileInstall ("d:\path\GenPass.htm", @ScriptDir & "\GenPass.htm", $FC_OVERWRITE) ; Template/Seed Local $sTemp = "" Local $bSeed = False, $fSeed=False If $CmdLine Then $sTemp = $CmdLineRaw If $CmdLine[$CmdLine] = "/s" Then $bSeed = True $sTemp = StringTrimRight($sTemp, 2) $sTemp = StringStripWS($sTemp, $STR_STRIPTRAILING) EndIf If $CmdLine[$CmdLine - 1] = "/s" Then $bSeed = True $fSeed = $CmdLine[$CmdLine] $sTemp = StringTrimRight($sTemp, 3 + StringLen($fSeed)) $sTemp = StringStripWS($sTemp, $STR_STRIPTRAILING) EndIf EndIf If Not $sTemp Then $sTemp = "8" If $sTemp = "1" Then $aSeps = StringSplit("#$%&()*+,-./:;@_", "") $sTemp = String(Random(3,6,1)) & $aSeps[Random(1,$aSeps,1)] & _ String(Random(2,4,1)) & $aSeps[Random(1,$aSeps,1)] & _ String(Random(3,6,1)) EndIf $sFn = @ScriptDir&"\GenPass.rnd" If $bSeed Then If Not $fSeed Then If Not FileExists($sFn) Then $fSeed = Random(-1.999^31,1.999^31,0) $h=FileOpen($sFn,2) If $h > -1 Then FileWrite($h,$fSeed) FileClose($h) Else Exit MsgBox($MB_ICONWARNING, @ScriptName, "Error opening " & $sFn) EndIf Else $h=FileOpen($sFn) If $h > -1 Then $fSeed=FileRead($h) FileClose($h) Else Exit MsgBox($MB_ICONWARNING, @ScriptName, "Error opening " & $sFn) EndIf EndIf EndIf SRandom($fSeed) Else If FileExists($sFn) Then FileDelete($sFn) EndIf ; Show help If StringInStr("?Hh", $sTemp) Then If WinExists("[REGEXPTITLE:GenPass.exe:.*]") Then WinActivate("[REGEXPTITLE:GenPass.exe:.*]") Else ShellExecute(@ScriptDir & "\GenPass.htm") EndIf Exit EndIf ; Main $sTemp = StringReplace($sTemp, " ", "_") $iC = 1 While $iC < 10001 $sPW = GenPW($sTemp) If $sPW Then ClipPut($sPW) If Not StringInStr (@ScriptName, "GenPW") Then _ MsgBox($MB_ICONINFORMATION, @ScriptName, $sPW & _ " saved to clipboard" & @CRLF & @CRLF & _ @ScriptName & " ? shows detailed help") Exit Else $iC += 1 EndIf WEnd Exit MsgBox($MB_ICONWARNING, @ScriptName, "Password generation failed!") ;------------------------------- Func GenPw($sTemplate) Local $aIn = StringSplit($sTemplate,"") Local $sOut = "" Local $sABC = _ "0123456789ABCDEFGHIJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz0123456789" Local $aAB = StringSplit($sABC, "") Local $bUC = 0, $bLC = 0, $bNR = 0 For $i = 1 To $aIn If Int($aIn[$i]) Then $iK = $aIn[$i] For $j = 1 To $iK $iR = Random(1, $aAB,1) Select Case StringInStr("0123456789", $aAB[$iR]) $bNR = 1 Case StringInStr("ABCDEFGHIJKLMNPQRSTUVWXYZ", _ $aAB[$iR], $STR_CASESENSE) $bUC = 1 Case StringInStr("abcdefghijklmnpqrstuvwxyz", _ $aAB[$iR], $STR_CASESENSE) $bLC = 1 EndSelect $sOut &= $aAB[$iR] Next Else $sOut &= $aIn[$i] EndIf Next If ($bUC And $bLC And $bNR) Then Return $sOut Else Return 0 EndIf EndFunc
; Title .........: Password
; AutoIt Version : 188.8.131.52
; Author(s) .....: Fenzik + Team Adaptech
; #CURRENT# =====================================================================================================================
It's my first UDF so please be nice.:)
If somebody have better idea how to store common dictionary and frequency table please post here...
I have a pretty advanced question...
This is the issue i'm facing :
On a regular basis we need to install pfx certificates (with password protection) on devices from external companies.
To install the certificate we always have to contact the user, setup a really dull and long process to get an RDP session to that device, install the certificate.
I'm looking for :
a way to generate exe files on the fly, that will include the pfx file and password, and automatically install them without any interaction from the user, and the user not being able to retrieve the password to install the certificate.
Is this possible with AutoIT? And if so, does anyone have a working example for the certificate installation part or the auto generate with file include?
Thx in advance
I'd like to write a piece of tool that would allow me to update a certain field in our Active Directory from a comma separated csv file composed like this:
This file, automatically generated, can hold more than 10k lines.
Thus, I need column A to be in one variable, column B in a second one and column C in a third one.
I'm really missing this part as updating the AD is fairly easy once the 3 variable are populated.
I see things like this:
Here's my attempts at the moment:
#include <File.au3> #include <Array.au3> Global $csv_file = @DesktopDir & "\Book1.csv" Global $aRecords If Not _FileReadToArray($csv_file,$aRecords) Then MsgBox(4096,"Error", " Error reading log to Array error:" & @error) Exit EndIf For $x = 1 to $aRecords Msgbox(0,'Record:' & $x, $aRecords[$x]) ; Shows the line that was read from file $csv_line_values = StringSplit($aRecords[$x], ",",1) ; Splits the line into 2 or more variables and puts them in an array ; _ArrayDisplay($csv_line_values) ; Shows what's in the array you just created. ; $csv_line_values holds the number of elements in array ; $csv_line_values holds the value ; $csv_line_values holds the value ; etc Msgbox(0, 0, $csv_line_values) Next Any help on this please?
Thanks in advance