정보실

웹학교

정보실

html 암호를 해독하는 방법

본문

간단한 참고 사항-이 기사는 암호 해독 방법에 대한 이론입니다. 

사이버 범죄자들이 공격을 실행하는 방법을 이해하는 것은 이러한 유형의 공격으로부터 시스템을 보호하는 방법을 이해하는 데 매우 중요합니다.


https://www.freecodecamp.org/news/an-intro-to-password-cracking/ 


귀하가 소유하지 않은 시스템을 해킹하려고 시도하는 것은 관할권에서 불법 일 수 있습니다.


기본부터 시작하겠습니다. 무차별 대입 공격이란 무엇입니까? 


이러한 유형의 공격에는 가능한 모든 문자, 숫자 및 문자 조합 (자동 도구 사용)을 시도하여 사용자로 반복적으로 로그인을 시도합니다.


온라인 (소셜 미디어 또는 뱅킹 사이트와 같은 계정에서 다른 사용자 이름 / 비밀번호 조합을 지속적으로 시도하여 실시간으로) 또는 오프라인 (예 : 해시 된 비밀번호 집합을 가져 와서 크랙 하려는 경우) 오프라인).


오프라인이 항상 가능하지는 않지만 (해시 된 암호 집합을 얻기가 어려울 수 있음) 소음이 훨씬 적습니다. 

보안 팀이 동일한 계정에서 많은 실패한 로그인 계정을 발견했을 가능성이 높지만 오프라인에서 암호를 해독 할 수 있는 경우 로그인 시도 실패 기록이 없습니다.


암호가 짧으면 비교적 쉽습니다. 많은 가능성으로 인해 암호가 길면 기하급수적으로 어려워집니다.


예를 들어, 누군가 소문자로만 구성된 5 자 길이의 비밀번호를 사용하고 있는 경우, 가능한 총 비밀번호 수는 26 ^ 5 (첫 번째 문자는 26 자, 두 번째는 26 자)입니다. 문자 등) 또는 11,881,376 개의 가능한 조합입니다.


그러나 누군가가 소문자 만 사용하는 11 자 암호를 사용하는 경우 가능한 총 암호 수는 26 ^ 11 또는 3,670,344,486,987,776 가능한 암호입니다.


대문자, 특수 문자 및 숫자를 추가하면 더 어려워지고 시간이 많이 걸립니다. 암호가 많을수록 누군가가 무차별 대입 공격으로 로그인하기가 더 어려워집니다.


자신을 보호하는 방법 


이러한 유형의 공격은 몇 가지 다른 방식으로 방어 할 수 있습니다. 

먼저 충분히 길고 복잡한 암호 (최소 15 자)를 사용할 수 있습니다. 

또한 각 계정마다 고유한 암호를 사용하여 (암호 관리자 사용) 데이터 유출로 인한 위험을 줄일 수 있습니다.


보안팀은 특정 횟수의 로그인 실패 후 계정을 잠글 수 있습니다. 

또한 보안 문자와 같은 2 차 검증 방법을 사용하거나 2 차 코드 (SMS 또는 이메일, 앱 기반 또는 하드웨어 키 기반)가 필요한 2FA (2 단계 인증)를 사용할 수도 있습니다.


다음은 무차별 대입 공격을 실행하는 방법에 대한 기사입니다.


어떻게 암호를 더 빨리 해독 할 수 있습니까? 


사전 공격에는 사전 컴파일 된 '사전'에 포함 된 여러 조합 또는 조합 목록을 시도하여 반복적으로 로그인하려고 합니다.


문자와 숫자의 조합이 이미 계산되었으므로 시간과 컴퓨팅 능력을 절약하기 때문에 이것은 일반적으로 무차별 대입 공격보다 빠릅니다.


그러나 암호가 충분히 복잡하고 (예 : 1098324ukjbfnsdfsnej) '사전'(사전 컴파일 된 조합 목록)에 나타나지 않으면 공격이 작동하지 않습니다.


사람들이 종종 암호를 선택할 때 일반적인 단어나 해당 단어의 변형 (예 : 'password'또는 'p@SSword')을 선택하기 때문에 종종 성공합니다.


해커는 암호의 일부 (예 : 개 이름, 어린이 생일 또는 기념일-해커가 소셜 미디어 페이지나 기타 오픈 소스 리소스에서 찾을 수 있는 정보)를 알고 있거나 추측 할 때 이러한 유형의 공격을 사용할 수도 있습니다.


무차별 대입 공격에 대해 위에서 설명한 것과 유사한 보호 조치로 이러한 유형의 공격이 성공하지 못할 수 있습니다.


이미 해시된 비밀번호 목록이 있으면 어떻게 합니까? 


비밀번호는 Linux의 경우 /etc/shadow 파일에, Windows의 경우 C:\Windows\System32\config 파일에 저장됩니다 (운영 체제가 부팅 되는 동안 사용할 수 없음).


이 파일을 얻었거나 네트워크에서 트래픽 스니핑과 같은 다른 방법으로 비밀번호 해시를 얻은 경우 '오프라인'비밀번호 크래킹을 시도 할 수 있습니다.


위의 공격은 반복적으로 로그인을 시도해야 하지만 해시 된 비밀번호 목록이 있는 경우 반복 된 로그인 시도 실패로 생성 된 경보를 설정하지 않고 시스템에서 비밀번호를 해독 할 수 있습니다. 

그런 다음 암호를 해독 한 후 한 번만 로그인을 시도하십시오 (따라서 로그인 시도가 실패하지 않음).


해시 파일에 대해 무차별 대입 공격 또는 사전 공격을 사용할 수 있으며 해시의 강도에 따라 성공할 수 있습니다.


잠깐만-해싱이란 무엇입니까? 


35D4FFEF6EF231D998C6046764BB935D


이 메시지를 인식 하시겠습니까? '안녕 내 이름은 메간'이야


7DBDA24A2D10DAF98F23B95CFAF1D3AB


이것이 이 기사의 첫 번째 단락입니다. 예, 말도 안되는 것처럼 보이지만 실제로는 '해시'입니다.


해시 함수를 사용하면 컴퓨터에서 문자열 (문자, 숫자 및 기호의 일부 조합)을 입력하고 해당 문자열을 취합하여 고정 길이 문자열을 출력 할 수 있습니다. 문자열의 입력 길이가 매우 다른 경우에도 위의 두 문자열의 길이가 동일한 이유입니다.


거의 모든 디지털 컨텐츠로 해시를 만들 수 있습니다. 기본적으로 모든 디지털 컨텐츠는 이진 또는 일련의 0과 1로 축소 될 수 있습니다. 따라서 모든 디지털 컨텐츠 (이미지, 문서 등)를 해시 할 수 있습니다.


많은 다른 해싱 함수가 있으며 그중 일부는 다른 것보다 안전합니다. 위의 해시는 MD5로 생성되었습니다 (MD는 "Message Digest"를 나타냄). 다른 함수는 또한 생성하는 해시 길이가 다릅니다.


동일한 해시 함수에서 동일한 내용은 항상 동일한 해시를 생성합니다. 그러나 조금만 변경해도 해시가 완전히 변경됩니다. 예를 들어


2FF5E24F6735B7564CAE7020B41C80F1


'Hi my name is Megan'의 해시입니다. Megan에서 M을 대문자로 바꾸면 해시가 완전히 위에서 변경되었습니다.


해시는 또한 단방향 함수입니다 (즉, 되돌릴 수 없음). 즉, 해시 (고유 및 단방향)를 콘텐츠의 디지털 지문 유형으로 사용할 수 있습니다.


해시를 사용하는 방법의 예는 무엇입니까? 


해시는 메시지가 변경되지 않았음을 확인하는 데 사용할 수 있습니다.


예를 들어 이메일을 보낼 때 전체 이메일을 해시하고 해시를 보낼 수도 있습니다. 그런 다음 수신자는 동일한 해시 함수를 통해 수신 된 메시지를 실행하여 메시지가 전송 중에 변조 되었는지 확인할 수 있습니다. 두 해시가 일치하면 메시지가 변경되지 않은 것입니다. 일치하지 않으면 메시지가 변경된 것입니다.


또한 암호는 일반적으로 저장 될 때 해시됩니다. 사용자가 암호를 입력하면 컴퓨터가 해시 값을 계산하여 저장된 해시 값과 비교합니다. 이 방법으로 컴퓨터는 암호를 일반 텍스트로 저장하지 않습니다. 따라서 일부 코가 해커는 암호를 훔칠 수 없습니다!


누군가가 암호 파일을 훔칠 수 있다면, 레인보우 테이블과 같이 알려진 해시를 만드는 평문이 무엇인지 알아내는 방법이 있지만 기능을 되돌릴 수 없기 때문에 데이터가 쓸모가 없습니다.


해시의 문제점은 무엇입니까? 


해시가 임의의 길이 또는 내용의 데이터를 취할 수 있는 경우, 해싱 될 수 있는 데이터에 대한 무한한 가능성이 있습니다.


해시는 이 텍스트를 고정 길이 컨텐츠 (예 : 32 자)로 변환하므로 해시에 대해 유한한 조합이 있습니다. 그것은 매우 많은 가능성이지만 무한한 것은 아닙니다.


결국 두 개의 서로 다른 데이터 세트는 동일한 해시 값을 생성합니다. 이것을 충돌이라고 합니다.


해시가 하나 있고 해시와 일치하는 일반 텍스트를 찾기 위해 가능한 모든 일반 텍스트 값을 검토하려고 하면 매우 길고 어려운 프로세스가 됩니다.


그러나 어떤 두 해시가 충돌하는지 신경 쓰지 않으면 어떻게 될까요? 


이것을 수학에서 '생일 문제'라고 합니다. 23 명의 학생들로 구성된 특정 날짜에 누군가 생일을 할 가능성은 약 7 %이지만 두 사람이 같은 생일을 공유 할 확률은 약 50 %입니다.


동일한 유형의 분석을 해시 함수에 적용하여 서로 일치하는 특정 해시 대신 일치하는 두 해시를 찾을 수 있습니다.


이를 피하기 위해 충돌 가능성이 낮은 SHA3와 같은 더 긴 해시 함수를 사용할 수 있습니다.


여기서 SHA3 및 MD5에 대한 고유 한 해시 함수를 생성 할 수 있습니다.


강제 해시를 무차별하게 시도 할 수 있지만 시간이 오래 걸립니다. 이를 수행하는 가장 빠른 방법은 사전 계산 된 레인보우 테이블 (사전 공격과 유사)을 사용하는 것입니다.


해킹하기가 정말 쉽습니다. 걱정해야 합니까? 


해킹에 대해 기억해야 할 가장 중요한 것은 아무도 해야 할 일보다 더 많은 일을 하고 싶지 않다는 것입니다. 

예를 들어, 무차별 강제 해시는 시간이 많이 걸리고 어려울 수 있습니다. 

암호를 얻는 더 쉬운 방법이 있다면, 아마도 사악한 행위자가 먼저 시도 할 것입니다.


즉, 기본 사이버 보안 모범 사례를 사용하는 것이 해킹을 막는 가장 쉬운 방법 일 것입니다. 

실제로 Microsoft는 최근 2FA 만 사용하면 자동 공격의 99.9 %를 차단할 것이라고 보고했습니다.


Screen-Shot-2019-08-27-at-1.18.47-PM.png 



추가 자료 : 


인기 있는 비밀번호 크래킹 도구



페이지 정보

조회 54회 ]  작성일20-03-10 17:38

웹학교