TortoiseSVN 저장된 비밀번호 추출
TortoiseSVN에 의해 저장된 자격 증명을 추출하는 방법이 있습니까?
짧은 답변 : TortoiseSVN Password Decrypter 를 사용 하여 비밀번호를 포함한 캐시 된 자격 증명을 쉽게 표시 할 수 있습니다.
긴 대답 : 도구의 작동 방식은 다음과 같습니다.
자격 증명은의 하위 디렉토리에 저장됩니다 %APPDATA%\Subversion\auth\
. 이 이전 답변 에서 다음과 같이 나열되었습니다 .
svn.simple
기본 인증을위한 자격 증명을 포함합니다 (사용자 이름 / 암호)svn.ssl.server
SSL 서버 인증서를 포함합니다svn.username
사용자 이름 전용 인증을위한 자격 증명을 포함합니다 (비밀번호 필요 없음)
첫 번째 디렉토리는 관심있는 디렉토리입니다. GUID처럼 보이는 이름을 가진 파일이 포함 된 것 같습니다. 신임 정보를 저장 한 각 저장소마다 하나씩.
이 파일의 암호는 Windows Data Protection API에 의해 암호화됩니다 . 위의 도구는 Obviex의 샘플 코드를 사용 하여이 API와 인터페이스하고 암호 해독을 수행합니다.
작동하려면 "인증 저장"확인란을 선택했을 때 실행했던 것과 동일한 Windows 사용자 계정에 액세스 할 수 있어야합니다. Windows Data Protection API가 Windows 계정에 연결된 암호화 키를 사용하기 때문입니다. 이 계정을 잃어버린 경우 (또는 관리자가 비밀번호를 재설정 한 경우) 더 이상 비밀번호를 해독 할 수 없습니다 ( 아마도 무차별 / 제 3 자 도구 사용 ). 동일한 사용자 이름 / 암호 (또는 아마도 SID)를 가진 새로운 Windows 계정을 갖는 것만으로는 충분하지 않습니다.
아래 정보를 바탕으로 어떤 방식으로 로컬에서 해독 할 수있는 것처럼 들립니다 ...
업데이트 : TortiseSVN 커뮤니티의 확실한 답변
그들이 유선으로 전송 될 때, 그들은 연결시 핸드 셰이크 및 / 또는 동의 된 키를 사용하여 암호화됩니다.
로컬로 저장 / 읽을 때 Windows 계정에 연결된 키를 사용하는 Windows Crypto API를 통해 암호화 / 암호 해독됩니다.
키는 사용자 계정에 로컬이기 때문에 서버에서 로컬로 암호화 된 복사본을 해독 할 수 없습니다.
따라서 연결하면 (HTTPS를 통해) 클라이언트가 해당 Windows API를 통해 자격 증명을 해독 한 다음 HTTPS 전송에 포함시킵니다. HTTPS 는 자격 증명뿐만 아니라 SSL 인증서를 사용하여 클라이언트와 서버 간의 전체 통신을 암호화합니다 .
참고 URL : https://stackoverflow.com/questions/3883129/extract-tortoisesvn-saved-password
'IT story' 카테고리의 다른 글
Github : 리포지토리의 다운로드 수를 볼 수 있습니까? (0) | 2020.07.13 |
---|---|
pip와 함께 설치된 Python 패키지의 종속성 관계 식별 (0) | 2020.07.13 |
자동 속성 디버깅 (0) | 2020.07.13 |
Windows에서 node.js 모듈의 기본 글로벌 설치 디렉토리를 변경 하시겠습니까? (0) | 2020.07.13 |
SVN을 사용하여 마지막 10 개의 커밋을 역 시간 순서로 어떻게 볼 수 있습니까? (0) | 2020.07.13 |