Board logo

标题: 用批处理写的极品密盘 [打印本页]

作者: jie226     时间: 2006-8-16 15:08    标题: 用批处理写的极品密盘

用批处理写的极品密盘






=========================================

效果和极品密盘2005差不多

如果大家觉得可以,我愿意公布源代码,和大家一同完善

回复1

   回『第 5 楼』
   所谓加密就是骗人,md5非常强壮,理论上还是破解了

  大家既然已经得到源码了,偶就不再卖关子了,就把源码写出来,偶的加密思想完全来自极品密盘2005,当时觉得这个加密方法挺简单,且实用,就有了用批处理写出来的冲动,偶不才,花了偶好几个晚自习,主要就是在各种判断上,需要考虑的太多,头都要快炸了:(,如果你觉得有价值,要传播,偶希望你加上偶的“记号”(jie_china或风里血)算是对偶的安慰吧, 嫌麻烦,你想怎样就怎样


  发在了11楼

[ Last edited by jie226 on 2010-8-7 at 17:11 ]
作者: electronixtar     时间: 2006-8-16 15:14
极品?
作者: chenall     时间: 2006-8-16 15:46
使用的是SUBST命令+回收站的特性.只能骗骗一些菜鸟.
使用密码作为文件夹的一部份.
通过检测输入的密码对应的文件夹是否存在来判断密码.

又学习了一个技巧.嘿嘿.
以后批处理设密码又多了一个方案.

[ Last edited by chenall on 2006-8-16 at 15:52 ]
作者: namejm     时间: 2006-8-16 15:55
  输入的地方都没有明确提示,菜鸟会发疯的。

  还有很多地方值得完善,比如说把界面的大小限制死,不让下拉条显示出来。

  楼上的,楼主的脚本是加了密的,你是怎样把原代码弄出来的?

[ Last edited by namejm on 2006-8-16 at 15:58 ]
作者: chenall     时间: 2006-8-16 19:05
到目前为止我还没有发现那种批处理加密软件能真正的加密.
大部份都是类似WINRAR一样打个包.
运行时是解压后再运行的.解压后就可以看到源码了.
作者: namejm     时间: 2006-8-16 19:24
  呵呵,原来是释放到%tme%目录下。
作者: chainliq     时间: 2006-8-16 19:34
源代码是什么啊,楼主快放出来啊~!
作者: jyssysz     时间: 2006-8-16 22:10
是呀,放出源码来大家来改进一下。
作者: 无奈何     时间: 2006-8-16 23:12
利用密码作为文件名的一部分,挺有创意的。你的字符输入比较部分有一些问题,比如输入其下任一字符就会直接退出:<>"|&;,=
作者: namejm     时间: 2006-8-16 23:14    标题: 获取“绿菩提密盘测试版.exe”源代码的方法

  当“绿菩提密盘测试版.EXE”处于运行状态时,运行以下脚本,将把“绿菩提密盘测试版.EXE”的bat版本复制到当前目录下,重命名为“绿菩提密盘测试版.bat”并用记事本打开,所有的秘密都一览无余了。呵呵,这也等于变相公布了源代码,楼主别见怪。
@echo off
set cur_dir=%cd%
cd /d "%tmp%"
for /f %%i in ('dir /a-d /b *.bat') do (
    set file=%%i
    findstr /c:"绿菩提密盘 测试版" %%i>nul 2>nul && xcopy /y /h %%i "%cur_dir%">nul
)
cd /d "%cur_dir%"
attrib -h %file%
if exist 绿菩提密盘测试版.bat del /q %file% && goto end
ren %file% 绿菩提密盘测试版.bat

:end
start notepad 绿菩提密盘测试版.bat
[ Last edited by namejm on 2006-8-16 at 23:47 ]
作者: jie226     时间: 2006-8-17 03:03    标题: 源码

@echo off
color 2f
:start
cls
echo.
echo.
echo.
echo         ==============================================================
echo.
echo                            绿菩提密盘 测试版
echo.
echo                   欢迎使用,请选择选项(1,2,3,4,5,6,7)
echo.
echo                              1.打开密盘
echo                              2.关闭密盘
echo                              3.建立密盘
echo                              4.删除密盘
echo                              5.密盘帮助
echo                              6.关于作者
echo                              7.X键关闭
echo.
echo.                 风里血制作    Email:jie_china@163.com
echo.
echo         ==============================================================
echo.
echo.
set /p choice=
if {%choice%}=={} goto start
if /i %choice%==1 goto open
if /i %choice%==2 goto off
if /i %choice%==3 goto set
if /i %choice%==4 goto del
if /i %choice%==5 goto help
if /i %choice%==6 goto zwj
if /i %choice%==x goto shut
if /i %choice%==kill goto kill
goto start

rem ===========================打开密盘==============================
:open
cls
echo.
echo.
echo.
echo.
echo         请输入密盘所在的分区(输入"C"则打开在C盘建立的密盘)
echo.
echo                        返回主菜单(请按X键)
echo.
set /p drv=
if {%drv%}=={} goto open
if /i %drv%==X goto start
if not exist %drv%: goto nodrv
echo 请输入密码:
set /p pass1=
if {%pass1%}=={} goto pw1
if /i %pass1%==X goto start
if not exist %drv%:\Recycle\S-1-5-21-1060284298-%pass1%-13438020086-500\ goto wm
subst z: %drv%:\Recycle\S-1-5-21-1060284298-%pass1%-13438020086-500 >nul 2>nul
echo.
echo.
cls
echo.
echo.
echo    请稍候...5秒后将自动打开密盘
ping 127.0.0.1 -n 5 >nul 2>nul
start z: >nul 2>nul
cls
echo.
echo.
echo    打开密盘成功,密盘为Z盘,请在"我的电脑里"查看
echo    按任意键返回主菜单
pause >nul
goto start
:wm
cls
echo.
echo.
echo    所在分区不存在密盘,或者密码错误,按任意键返回主菜单
pause >nul
goto start
:pw1
echo 密码不能为空,请输入密码:
set /p pass1=
if {%pass1%}=={} goto pw1
if /i %pass1%==X goto start
if not exist %drv%:\Recycle\S-1-5-21-1060284298-%pass1%-13438020086-500\ goto wm
subst z: %drv%:\Recycle\S-1-5-21-1060284298-%pass1%-13438020086-500 >nul 2>nul
start z: >nul 2>nul
cls
echo.
echo.
echo    建立密盘成功,密盘为Z盘,按任意键返回主菜单
pause >nul
goto start
rem ===========================打开密盘结束===========================


rem ===========================关闭密盘===============================
:off
cls
subst z: /d
echo.
echo.
echo.
echo                关闭密盘成功,按任意键返回主菜单
echo.
echo.
echo.
pause >nul
goto start
rem ===========================关闭密盘结束===========================


rem============================建立密盘===============================
:set
cls
echo.
echo.
echo.
echo.
echo        请输入要建立保密文件夹的分区(输入"C"则在C盘建立密盘,依次类推.)
echo.
echo                        返回主菜单(请按X键)
echo.
echo.
set /p drv=
if {%drv%}=={} goto set
if /i %drv%==X goto start
if not exist %drv%: goto nodrv
if exist %drv%:\Recycle goto error
echo 请输入密码:
set /p pass2=
if {%pass2%}=={} goto pw2
if /i %pass2% ==X goto start
md %drv%:\Recycle >nul 2>nul
attrib +s +h %drv%:\Recycle >nul 2>nul
echo [.ShellClassInfo]>>C:\tmp
echo CLSID={645FF040-5081-101B-9F08-00AA002F954E}>>C:\tmp
copy c:\tmp %drv%:\Recycle\desktop.ini >nul 2>nul
del c:\tmp >nul 2>nul
attrib +s +h %drv%:\Recycle\desktop.ini
md %drv%:\Recycle\S-1-5-21-1060284298-%pass2%-13438020086-500 >nul 2>nul
echo 建立密盘成功,请记住建立密盘的分区和密码,按任意键返回主菜单
pause >nul
cls
goto start
:pw2
echo 密码不能为空,请输入密码:
set /p pass2=
if {%pass2%}=={} goto pw2
if /i %pass2% ==X goto start
md %drv%:\Recycle >nul 2>nul
attrib +s +h %drv%:\Recycle >nul 2>nul
echo [.ShellClassInfo]>>C:\tmp
echo CLSID={645FF040-5081-101B-9F08-00AA002F954E}>>C:\tmp
copy c:\tmp %drv%:\Recycle\desktop.ini >nul 2>nul
del c:\tmp >nul 2>nul
attrib +s +h %drv%:\Recycle\desktop.ini
md %drv%:\Recycle\S-1-5-21-1060284298-%pass2%-13438020086-500 >nul 2>nul
echo 建立密盘成功,请记住建立密盘的分区和密码,按任意键返回主菜单
pause >nul
goto start
rem ==========================建立密盘部分结束=======================

rem ============================删除密盘=============================
:del
subst z: /d >nul 2>nul
cls
echo.
echo.
echo.
echo           请删除之前确认密盘里面没有任何秘密文档.(Y/N)
echo.
echo                        返回主菜单(请按X键)
echo.
set /p yesorno=
if {%yesorno%}=={} goto del
if /i %yesorno%==y goto start2del
if /i %yesorno%==n goto start
if /i %yesorno%==X goto start
goto del
:start2del
echo 请输入密盘所在的分区(输入"C"则删除在C盘建立的密盘)
set /p drv=
if {%drv%}=={} goto del
if /i %drv%==X goto start
if not exist %drv%: goto nodrv
echo 请输入密码:
set /p pass3=
if {%pass3%}=={} goto pw3
if /i %pass3%==X goto start
if not exist %drv%:\Recycle\S-1-5-21-1060284298-%pass3%-13438020086-500\ goto pwfail
attrib -s -h %drv%:\Recycle\desktop.ini >nul 2>nul
del %drv%:\Recycle\desktop.ini >nul 2>nul
rd %drv%:\Recycle\S-1-5-21-1060284298-%pass3%-13438020086-500\ /q >nul 2>nul
rd %drv%:\Recycle\ /q >nul 2>nul
if exist %drv%:\Recycle\S-1-5-21-1060284298-%pass3%-13438020086-500\ goto fail
echo 成功删除!按任意键返回主菜单
pause >nul
goto start
:fail
cls
echo.
echo.
echo 删除失败,密盘有文档,或者密盘不存在.
echo [.ShellClassInfo]>>C:\tmp
echo CLSID={645FF040-5081-101B-9F08-00AA002F954E}>>C:\tmp
copy c:\tmp %drv%:\Recycle\desktop.ini >nul 2>nul
del c:\tmp >nul 2>nul
attrib +s +h %drv%:\Recycle\desktop.ini >nul 2>nul
echo.
echo.
echo 按任意键返回主菜单
pause >nul
cls
goto start
:pw3
echo 密码不能为空,请输入密码:
set /p pass2=
if {%pass3%}=={} goto pw3
if /i %pass3%==X goto start
attrib -s -h %drv%:\Recycle\desktop.ini >nul 2>nul
del %drv%:\Recycle\desktop.ini >nul 2>nul
if not exist %drv%:\Recycle\S-1-5-21-1060284298-%pass3%-13438020086-500\ goto fail
rd %drv%:\Recycle\S-1-5-21-1060284298-%pass3%-13438020086-500\ /q >nul 2>nul
rd %drv%:\Recycle\ /q >nul 2>nul
if exist %drv%:\Recycle\S-1-5-21-1060284298-%pass3%-13438020086-500\ goto fail
echo 成功删除!按任意键返回主菜单
pause >nul
goto start
:pwfail
cls
echo.
echo.
echo 密码错误,或者密盘不存在.
echo 按任意键返回主菜单
pause >nul
goto start
rem ==============================删除密盘结束=========================
rem
rem ==============================有了加密文件夹错误=================================
:error
echo 此分区已经有了加密文件夹,请选择其他分区.按任意键返回主菜单
pause >nul
cls
goto start
rem ==============================错误结束=============================
rem
rem ==============================驱动器不存在错误结束=============================
:nodrv
cls
echo.
echo.
echo.
echo    指定的驱动器不存在,按任意键返回主菜单
pause >nul
goto start
rem ==============================错误结束=============================
rem ==============================帮助=============================
:help
cls
echo.
echo.
echo.
echo.
echo.
echo   此密盘适用于XP系统,由此密盘造成的一切损失,本人不负任何责任.
echo   !!如果你不愿意,可以放弃使用!!
echo.  使用方法: 1  建立密盘,请牢记建立密盘的分区和密码!!
echo.            2  打开密盘,密盘将被设为Z盘,请在我的电脑里查看.
echo.            3  像使用其他分区一样,可以拷贝删除.
echo.            4  使用完后,请关闭密盘,重启以后密盘自动关闭.
echo.            5  删除密盘前,必须清空密盘,包括隐藏文件.负则密盘无法删除.
echo.            6  在密盘里, 没有必要把文件设为隐藏.
echo.
echo    本软件为免费软件欢迎大家使用
echo    按任意键返回主菜单
pause >nul
goto start
rem ==============================帮助结束=============================
rem ==============================关于作者=============================
:zwj
cls
echo.
echo.
echo.
echo.
echo.
echo      本软件为免费软件欢迎大家使用
echo      此软件用批处理写成,软件现在为测试阶段,难免存在错误.
echo      欢迎大家提出宝贵意见,以便本人及时改进.
echo      本人不会编程,但是是个批处理狂热爱好者,希望和您交流.
echo      Email:jie_china@163.com
echo      一些原创 http://5690271.ys168.com
echo      留言: http://free.cnyys.com/my/5690271/ly/index.asp
echo      QQ:283435390  
echo      2006.6.5
echo.
echo.
echo.
echo                     。▍ ★∴
echo                ....▍▍..    █▍ ☆ ★∵ ..../
echo                   ◥ 祝你   █ 永远 ██  快乐  ██◤
echo                     ◥███████████████◤
echo                       ◥█████████████◤  
echo.
echo.
echo.
echo.
echo.
echo      按任意键返回主菜单
pause >nul
goto start
rem ==============================关于作者结束=============================
rem ==============================关闭程序=============================
:shut
exit
rem ==============================关闭程序结束=============================
rem ==============================恢复默认=============================
:kill
cls
echo.
echo.
echo.
echo            请恢复默认之前确认密盘里面没有重要文档.(Y/N)
echo            !!!将强制删除C,D,E,F,G盘可能存在损坏密盘,包括数据!!!
echo            !!包括数据!!  请认真考虑  ! 本人不负任何责任
echo.
echo                        返回主菜单(请按X键)
echo.
set /p yesorno=
if {%yesorno%}=={} goto kill
if /i %yesorno%==y goto kill2
if /i %yesorno%==n goto start
if /i %yesorno%==X goto start
goto kill
:kill2
rd c:\Recycle /s /q >nul 2>nul
rd d:\Recycle /s /q >nul 2>nul
rd e:\Recycle /s /q >nul 2>nul
rd f:\Recycle /s /q >nul 2>nul
rd g:\Recycle /s /q >nul 2>nul
echo  恢复默认成功,按任意键返回主菜单
pause >nul
goto start
rem ==============================恢复默认=============================
作者: IceCrack     时间: 2006-8-17 08:37
谢谢楼主的分享精神.学习一下
作者: IceCrack     时间: 2006-8-18 21:35
这个回收站的特性怎么个特别了  请详述一下.还有就是我就是把系统保护还有隐藏都给打开还是看不到文件 这个是为什么?
为什么我在dos下却可以查看?
作者: electronixtar     时间: 2006-8-18 23:48
well,玩文件夹隐藏早过时了,都是骗explorer这个shell,现在随便个菜鸟都知道用WinRAR来看,高手用cmd的dir,其实呢,explorer还有很多特性等待people去发现,比如说,“文件夹快捷方式”,注意,不是“文件夹快捷方式”,可以绕过WinRAR,如果能用畸形文件名的话绕过cmd也不是什么难事~~
作者: electronixtar     时间: 2006-8-18 23:57
再冒一句,MD5不是加密,是hash,呵呵
作者: electronixtar     时间: 2006-8-19 00:14
回复下 IceCrack  的疑问,尽己所能吧

explorer,即 我的电脑 里的东西呢,不全是 文件系统/磁盘 上的文件,比如说 桌面、回收站 这类属于虚构的路径呢,死微软官方的说法叫 namespace,也就是比 文件系统(FS)还大的一个层次体系。举个例子吧,可以看看
开始菜单\程序\附件\通讯\网络连接.lnk  的属性:
%SystemRoot%\explorer.exe ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\::{7007acc7-3202-11d1-aad2-00805fc1270e}
上面的一串字符就叫CLSID,代表 namespace 的路径,翻译下,就是

explorer 我的电脑\控制面板\网络连接\

那么,回收站加密就运用了类似的一个CLSID:
{645FF040-5081-101B-9F08-00AA002F954E}

他在目标加密文件夹下生成了臭名昭著的desktop.ini,内容为

[.ShellClassInfo]
CLSID={645FF040-5081-101B-9F08-00AA002F954E}

然后加上 系统 隐藏属性

如果你去dir你的C: D: E: 下的recycler文件夹,也会发现一莫一样的desktop.ini


其实,新建一个文件夹,改名为:
a.{645FF040-5081-101B-9F08-00AA002F954E}

双击试试,是不是打开了回回收站?

再改成
b.{2227A280-3AEA-1069-A2DE-08002B30309D}

是不是打开了 打印机 文件夹呢?

类似的trick太多了,有兴趣的可以参看MSDN相关章节,包括 脚本 编写 shell 程序,都很有意思的。(我的MSDN是2003Feb的)
ms-help://MS.MSDNQTR.2003FEB.2052/shellcc/platform/shell/programmersguide/shell_intro.htm

再推荐一个好玩的东东,可以编辑系统的 namespace ,
shell object editorhttp://www.crsky.com/soft/2206.html

最后,为什么在cmd下就能看呢?我的签名说:cmd只是一种shell,和explorer不同的Windows的shell,不受explorer特性的影响,所以能查看。

[ Last edited by electronixtar on 2006-8-19 at 00:23 ]
作者: buddiyar     时间: 2006-8-19 12:58
学习中
作者: IceCrack     时间: 2006-8-19 13:27


  Quote:
我的签名说:cmd只是一种shell,和explorer不同的Windows的shell,不受explorer特性的影响,所以能查看。

直接你就不就得了.还你的签名说.晕死了
按你的思路  我用tc查看了.呵呵 可以看到文件,也就是说tc用的不是explorer的shell了!
呵呵
作者: electronixtar     时间: 2006-8-19 14:33


  Quote:
tc用的不是explorer的shell了

准确的说,TotalCommander 应该不是Windows 自带的 shell
作者: yanzhong     时间: 2006-9-7 02:13
高手啊
作者: hdzc     时间: 2007-10-19 23:47
谢谢楼主的分享精神
作者: sgzhou6688     时间: 2008-3-25 13:33
太可怕了,这么精密我也找到了呀,谢谢楼主