我试图通过向SQL Server发送伪凭证并多次迭代(~100)来模拟暴力攻击。我一直在尝试使用“for”循环,但似乎无法使其正常工作......
For ($i=1; $i -le 101; $i++) {
$cn = New-Object System.Data.QLClient.SQLConnection
$cn.ConnectionString = "Server=$line;User ID=$USER;Password=$PASS;"
$cn.Open()
}
非常感谢任何帮助。
答案 0 :(得分:1)
我认为你需要从Open()中捕获异常并忽略它。这将起作用,因为连接失败不会打破循环。
尝试这样的事情:
For ($i=1; $i -le 101; $i++){
$cn = New-Object System.Data.SQLClient.SQLConnection
$cn.ConnectionString = "Server=$line;User ID=$USER;Password=$PASS"
try {
Write-Output "Try $i on $line"
$cn.Open()
$cn.Close()
}
catch
{
Write-Output $_.Exception.Message
}
}