需求:標題就是需求,想用密碼庫批量檢測一下域內的弱密碼。
解決:powershell來實現,不需要第三方工具,不怕被人偷了密碼。
本指令碼需要3個檔案,空的即可,位於d:/pwd下
1 name.csv,儲存需要測試的使用者名稱列表
2 pwd.csv,儲存需要測試的密碼列表
3 name2.csv,儲存驗證成功的密碼
域不能限制測試密碼次數,必須管理員方式執行
echo "本指令碼需要3個檔案,位於d:/pwd下"如果有密碼驗證成功的,會自動追加寫入到d:\pwd\name2.csv下,同時,控制台會綠色顯示那條記錄。echo "1 name.csv,儲存需要測試的使用者名稱列表 "
echo "2 pwd.csv,儲存需要測試的密碼列表"
echo "3 name2.csv,儲存驗證成功的密碼"
echo "域不能限制測試密碼次數,必須管理員方式執行"
$files = (get-childitem d:\pwd\name2.csv).pspath
$content = get-content $files
import-csv -path d:\pwd\name.csv | foreach " -f $_.name
$username = "tech\" +"$bb"
import-csv -path d:\pwd\pwd.csv | foreach " -f $_.pwd
$pass = convertto-securestring -asplaintext $_.pwd -force
$cred = new-object system.management.automation.pscredential($username,$pass)
$dcred = $cred
$dusername = $dcred.username
$dpassword = $dcred.getnetworkcredential().password
$currentdomain = "ldap://" + ([adsi]"").distinguishedname
$auth = new-object system.directoryservices.directoryentry($currentdomain,$dusername,$dpassword)
if ($auth.name -eq $null)
else
} }
在上面的指令碼中,我注釋掉了兩行,可以顯示密碼驗證失敗的時候,以紅色顯示記錄,考慮到不顯示會更節省記憶體,所以注釋掉了。這個指令碼用到了很多powershell的知識點,有興趣的同學可以自己看看。
Powershell 批量互換域使用者屬性資訊 聽聞
需求描述 因生產環境資料介面需求,需要對某時間段已上線使用者屬性進行批量互換,涉及欄位employeenumber,employeeid 環境資訊 windows server 2012 r2 activedirectory 操作步驟 ps.操作之初,建議先對當前環境屬性字段進行備份匯出操作。方法一...
Powershell批量建立AD賬戶
它是乙個單獨的命令列,即匯入乙個 csv 檔案並使用其中的資訊建立數十甚至數百個新的 active directory 使用者 import csv c provision1.csv foreach object 它確實是個很長的命令,但功能卻強大得令人驚訝。首先是 import csv 本機外殼 ...
powershell 指令碼檢查已安裝證書
額,前面的指令碼能自動安裝了,客戶來了句我怎麼知道已經安裝好了?我答 不是已經顯示success了嗎?客戶 那以後呢,我忘了怎麼辦?可以用mmc啊,然後選證書,本地計算機 mmc是什麼?額 我寫指令碼吧 讓心裡的神獸再奔騰一會兒的分割線 function check certificate if f...