이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 5499|회답: 2

[출처] 【연습】C# 프로그램은 쿠키를 통해 Discuz의 현재 사용자 정보를 복호화합니다

[링크 복사]
게시됨 2022. 10. 23. 오후 10:02:39 | | | |
요구사항: 사용자가 성공적으로 로그인하면 Discuz 프로그램이 응답성 방식으로 로그인 자격 증명을 쿠키에 기록합니다. 쿠키가 알려져 있다면, 현재 로그인한 사용자의 사용자 ID를 어떻게 복호화하나요?

먼저, 서버에 로그인해서 확인해야 합니다/config/config_global.php다음 구성에는 두 가지 구성이 있습니다:

쿠키 접두사:$_config['쿠키']['쿠키프리']
암호화 및 복호화 키:$_config['보안']['인증키']

이 사이트를 예로 들자면: $_config['cookie']['cookiepre'] = 'Mqd1_'; , 쿠키에서 :Mqd1_2132_saltkey와 Mqd1_2132_auth의 값을 확인하세요.

원리는 다음과 같습니다:

$authkey = "*********"; 이게 비밀 열쇠야. $_config['security']['authkey'] = config/config_global.php 파일 내 '*******'; 이게 바로 그거야, 네가 가진 걸 보면 있는 거야.
$salt = $_COOKIE['Mqd1_2132_saltkey']; 이것은 discuz가 생성하는 난수입니다
$key = md5($authkey.$salt); 복호화 키
$info = uc_authcode($_COOKIE['Mqd1_2132_auth'], '디코드',$key);

그다음 $info을 출력해 보면 다음과 같은 결과가 나옵니다:

BF6B7E1DDD3DA431342F550EB8CE19E5 1

끝에 1 또는 다른 숫자가 있는데, 이는 사용자 ID를 나타내므로 사용자 정보를 얻고, 이 ID를 바탕으로 uCenter의 사용자 정보를 얻을 수 있었습니다.
복호화 방법을 알게 되면, C# 코드는 다음과 같습니다:

해당 정보를 프로그램에 입력하면 실행 결과는 다음과 같습니다:



프로그램 다운로드:

관광객 여러분, 이 게시물의 숨겨진 내용을 보고 싶으시다면 부탁드립니다회답






이전의:【실전 전투】홈 미디어 도커용 썬더 다운로드 및 DLNA 서비스 구축
다음:VDI 제품 비교: VMware Horizon vs. Citrix
게시됨 2022. 10. 24. 오후 12:24:43 |
배우세요
게시됨 2022. 10. 25. 오전 10:13:44 |
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com