Batch file 绕过非安全密码
因此,我制作了一个非常简单、非常不安全的批处理程序,将您输入的密码与程序中的密码进行比较。现在我想看看我是否可以绕过它(我个人正在考虑类似于SQL注入的东西)。唯一的限制是你不能阅读源代码。那么,有什么建议吗Batch file 绕过非安全密码,batch-file,password-protection,Batch File,Password Protection,因此,我制作了一个非常简单、非常不安全的批处理程序,将您输入的密码与程序中的密码进行比较。现在我想看看我是否可以绕过它(我个人正在考虑类似于SQL注入的东西)。唯一的限制是你不能阅读源代码。那么,有什么建议吗 @echo off :A echo enter password to activate the program set/p "pass=>" if NOT %pass% == l33t goto :A start program cls exit 这是我们的一批货 if(密码=
@echo off
:A
echo enter password to activate the program
set/p "pass=>"
if NOT %pass% == l33t goto :A
start program
cls
exit
这是我们的一批货
if(密码==“l33t”){start program}。
编辑:您也不能强制执行它。在控制台中键入
启动程序。这将绕过密码“保护”
天然橡胶
无论如何,代码中没有注入漏洞。这里有一个批处理程序,需要3分钟才能找到您的代码。哈哈
@echo off&cls
setlocal EnableDelayedExpansion
set $ListChar=a b c d e f g h i j k l m o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0
::For a code with 4 char (without special char)
echo %time%>Brutef.txt
for %%a in (%$Listchar%) do (
for %%b in (%$Listchar%) do (
for %%c in (%$Listchar%) do (
for %%d in (%$Listchar%) do (
set $CODE=%%a%%b%%c%%d
if "!$CODE!"=="l33t" (echo !time!>>Brutef.txt
echo CODE FOUND : !$Code!
PAUSE
start program)))))
您可以在Brutef.txt
中查看所需的时间,我看不出这个答案有什么坏处,因为如果您知道批处理源代码,那么您可能知道如何启动程序
让我们试着进入:
EXIST blabla.txt
这将抛出一个错误,但批处理将继续,因此您将绕过if子句。您不知道程序的名称是program。它只需要一个密码。我想看看我是否可以自己设置密码保护,其他人如何绕过它,以及我如何使它更安全。基本上只是为了更好地理解密码。还有,martinstoeckli发现了密码中的漏洞。这正是我所寻找的,我尝试了它,它成功了。然而,它为什么要启动该计划?错误不应该终止整个程序吗?还有,我怎样才能保证程序的安全性?非常感谢您的回答:)哦,我知道您在那里做了什么,您可以使用exist命令和if命令。我仍然不知道它为什么不将exist命令作为字符串读取,或者如何防御它。@user3207874要防止这种情况,您可以将它作为字符串引用,如果不是“%pass%”==“l33t”goto:a
。