drcom数据库密码解密 - 分析技术网

drcom数据库密码解密

作者: SX分析技术网

全网最全的网络资源分享网站

手机扫码查看

标签:

防攻击

特别声明:文章多为网络转载,资源使用一般不提供任何帮助,特殊资源除外,如有侵权请联系!

分享本文至:


做某一个项目时候发现是drcom数据库
里面的账号密码是加密  就问朋友要了一个解密的  虽然很少遇到这种就当作一个备份吧


#!/usr/bin/python
# -*- coding: utf-8 -*-
class Drcomcode(object):
def __init__(self):
self.key = self.numericpassword("TblRefreshCurMonthServiceUse")
self.to_text =[]
def myindex(self,shadow):
j = 1
i = 1
while True:
j *= 2
i = i+1
if shadow<i:
break
return j
def numericpassword(self,word):
shift1 = 0
shift2 = 0
value = 0
str_len = len(word)
i = 0
while True:
ch = ord(word[i])
value ^=ch*self.myindex(shift1)
value ^=ch*self.myindex(shift2)
shift1 = (shift1+7)%19
shift2 = (shift2+13)%23
i = i+1
if i >= str_len:
break
value = (value^0x18901)%100537
return value
def decode(self,text):
str_len = len(text)-1
i = 0
while True:
if i>=str_len:
break
ch = ord(text[i])
if (ch>=32) and (ch<=126):
i += 1
ch -= 32
offset =96.0*(self.key*i%100537/100537.0)
ch = (ch-int(offset))%95
if ch<0:
ch = ch+95
ch = ch+32
i = i-1
self.to_text.append(chr(ch))
i = i+1
return self.to_text
def encode(self,text):
str_len = len(text)-1
i =0
while True:
if i>str_len:
break
ch = ord(text[i])
if (ch>=32) and (ch<=126):
i += 1
ch -= 32
offset = 96.0*(self.key*i%100537/100537.0)
ch = (ch+int(offset))%95
ch +=32
i -= 1
self.to_text.append(chr(ch))
i += 1
self.to_text.append('a')
return self.to_text
print ''.join(Drcomdecoder().decode("Ma"))
print ''.join(Drcomdecoder().encode('1'))

分享到:
打赏
未经允许不得转载:

作者: SX分析技术网, 转载或复制请以 超链接形式 并注明出处 分析技术网
原文地址: 《drcom数据库密码解密》 发布于2019-11-28

评论

切换注册

登录

您也可以使用第三方帐号快捷登录

切换登录

注册

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

分析技术网《www.caiwuje.cn》

本站(自动收录友链)

分析技术网 (www.caiwuje.cn) 网站博客,博客网站制作,个人技术博客,个人博客网站,个人seo,自媒体博客,个人seo优化,移动端web框架,shift后门,dede密码重置,mysql添加用户,nginx解析漏洞,web安全扫描工具,wooyun镜像,iis解析漏洞,网易云解析,struts2漏洞利用工具,metasploit渗透测试指南,漏洞测试,远程命令执行

申请友链

给我留言