브루트 포스 공격
Brute-force attack암호학에서 무차별 공격은 공격자가 결국 정확하게 추측할 수 있다는 희망으로 많은 비밀번호나 암호문을 제출하는 것으로 구성됩니다. 공격자는 올바른 암호를 찾을 때까지 모든 가능한 암호와 암호를 체계적으로 확인합니다. 또는 공격자는 키 유도 함수를 사용하여 암호에서 일반적으로 생성되는 키를 추측하려고 시도할 수 있습니다. 이것은 철저한 키 검색으로 알려져 있습니다.
브루트 포스 공격은 이론적으로 암호화된 데이터(정보 이론적으로 안전한 방식으로 암호화된 데이터 제외)를 암호화된 데이터의 암호화를 시도하는 데 사용될 수 있는 암호 분석 공격입니다.[1] 이러한 공격은 작업을 쉽게 만드는 암호화 시스템의 다른 취약성(존재하는 경우)을 이용할 수 없을 때 사용될 수 있습니다.
암호를 추측할 때, 이 방법은 모든 짧은 암호를 확인하는 데 사용될 때 매우 빠르지만, 긴 암호의 경우에는 브루트 포스 검색이 너무 오래 걸리기 때문에 사전 공격과 같은 다른 방법이 사용됩니다. 긴 암호, 암호 및 키는 가능한 값이 더 많기 때문에 짧은 암호보다 암호를 풀기가 기하급수적으로 더 어렵습니다.[2]
브루트 포스 공격은 암호화될 데이터를 난독화함으로써 코드가 언제 깨졌는지 공격자가 인식하기 어렵게 하거나 공격자가 각 추측을 테스트하기 위해 더 많은 작업을 수행하도록 함으로써 덜 효과적으로 만들 수 있습니다. 암호화 시스템의 강도를 측정하는 척도 중 하나는 이론적으로 공격자가 공격에 성공하는 데 걸리는 시간입니다.[3]
브루트 포스 공격은 모든 후보를 열거하고 각 후보를 확인하는 일반적인 문제 해결 기술인 브루트 포스 검색의 응용 프로그램입니다. '해머링'이라는 단어는 때때로 무차별적인 공격을 묘사할 때 사용되며,[4] 대응을 위한 '해머링 반대'와 함께 사용됩니다.[5]
기본개념
브루트 포스 공격은 암호를 구성할 수 있는 가능한 모든 조합을 계산하고 암호가 올바른지 테스트하여 작동합니다. 암호의 길이가 길어질수록 평균적으로 올바른 암호를 찾는 시간이 기하급수적으로 늘어납니다.[6]
이론적 한계
단순 공격에 필요한 리소스는 키 크기가 선형이 아닌 증가함에 따라 기하급수적으로 증가합니다. 미국 수출 규정은 역사적으로 키 길이를 56비트 대칭 키(예: Data Encryption Standard)로 제한했지만, 이러한 제한은 더 이상 존재하지 않기 때문에 현대 대칭 알고리즘은 계산적으로 더 강력한 128비트에서 256비트 키를 사용합니다.
128비트 대칭 키가 단순한 공격에 대해 계산적으로 안전하다는 물리적 주장이 있습니다. 물리학 법칙에 의해 내포된 란다우어 한계는 계산에서 소거된 비트당 kT · ln 2의 계산을 수행하는 데 필요한 에너지의 하한을 설정합니다. 여기서 T는 켈빈 단위의 컴퓨팅 장치 온도, k는 볼츠만 상수, 2의 자연 로그는 약 0.693(0.693147180599453)입니다. 어떤 비가역 컴퓨팅 장치도 원칙적으로 이보다 적은 에너지를 사용할 수 없습니다.[7] 따라서 128비트 대칭 키의 가능한 값을 간단히 뒤집기 위해서는 이론적으로 기존128 프로세서에서 2 - 1비트 플립이 필요합니다. 계산이 실온(≈300 K) 근처에서 발생한다고 가정할 경우, 본 노이만-란다우어 한계를 적용하여 ≈10 줄로 필요한 에너지를 추정할 수 있으며, 이는 1년 동안 30기가와트의 전력을 소비하는 것과 같습니다. 이는 30×10 W×365×24×3600 s = 9.46×10 J 또는 262.7 TWh(연간 세계 에너지 생산량의 약 0.1%)와 같습니다. 해결책을 찾았는지 확인하기 위해 각 키를 확인하는 전체 실제 계산은 이 양의 몇 배를 소비하게 됩니다. 또한 이는 단순히 키 공간을 순환하는 데 필요한 에너지이며, 각 비트를 뒤집는 데 걸리는 실제 시간은 고려되지 않으며, 이는 확실히 0보다 큽니다(Bremermann's limit 참조).[citation needed]
그러나 이 주장은 레지스터 값이 기존의 세트 및 클리어 연산을 사용하여 변경되는 것으로 가정하며, 이는 필연적으로 엔트로피를 생성합니다. 계산 하드웨어는 이러한 이론적인 방해를 받지 않도록 설계될 수 있는 것으로 나타났지만(가역 컴퓨팅 참조), 그러한 컴퓨터는 구축되지 않은 것으로 알려져 있습니다.[citation needed]
사용자 지정 하드웨어 공격이라고도 알려진 정부 ASIC 솔루션의 상업적 계승자가 사용 가능해짐에 따라, 두 개의 새로운 기술이 특정 암호의 단순한 공격 능력을 입증했습니다. 하나는 현대 그래픽 처리 장치(GPU) 기술이고,[8][page needed] 다른 하나는 현장 프로그래밍 가능 게이트 어레이(FPGA) 기술입니다. GPU는 광범위한 가용성과 가격 대비 성능의 이점을, FPGA는 암호화 작업당 에너지 효율성의 이점을 제공합니다. 두 기술 모두 병렬 처리의 이점을 단순한 공격으로 전달하려고 합니다. GPU의 경우 수백 개, FPGA의 경우 수천 개의 처리 장치가 기존 프로세서보다 암호 해독에 훨씬 적합합니다. 예를 들어, 2022년에는 8개의 Nvidia RTX 4090 GPU를 연결하여 소프트웨어 해시캣을 사용하여 암호 강도를 테스트했으며, 그 결과 2,000억 개의 8자 암호 조합을 48분 만에 순환 처리할 수 있음을 보여주었습니다.[9][10]
암호 분석 분야의 다양한 출판물에서 오늘날의 FPGA 기술의 에너지 효율성을 입증했는데, 예를 들어 COPACOBANA FPGA Cluster 컴퓨터는 단일 PC(600W)와 동일한 에너지를 소비하지만 특정 알고리즘의 경우 2,500대의 PC와 같은 성능을 발휘합니다. 단일 FPGA PCI Express 카드에서 전용 FPGA 컴퓨터까지 하드웨어 기반 FPGA 암호화 분석 솔루션을 제공하는 기업이 다수 있습니다.[citation needed] WPA 및 WPA2 암호화는 기존 CPU에[11][12] 비해 작업량을 50배, FPGA의 경우 수백 배까지 줄여 단순 공격에 성공했습니다.
AES(Advanced Encryption Standard)를 사용하면 256비트 키를 사용할 수 있습니다. 대칭 256비트 키를 단순한 힘으로 꺾는 것은 128비트 키보다 2배128 더 많은 연산력을 필요로 합니다. 2019년에 가장 빠른 슈퍼컴퓨터 중 하나는 이론적으로 초당 1억14 개의 AES 키를 확인할 수 있는 100페타플롭스의 속도를 가지고 있지만(체크당 1000번의 동작을 가정할 때), 256비트 키 공간을 소진하기 위해서는 3.6755×10년이 필요합니다.[13]
브루트 포스 공격의 근본적인 가정은 완전한 키 공간을 사용하여 키를 생성했다는 것이며, 이는 효과적인 난수 생성기에 의존하며 알고리즘이나 구현에 결함이 없다는 것입니다. 예를 들어, 원래 무차별적인 힘으로 균열을 내는 것이 불가능하다고 생각되었던 많은 시스템들은 그럼에도 불구하고 의사 난수 생성기에 엔트로피가 부족하기 때문에 검색할 수 있는 핵심 공간이 원래 생각했던 것보다 훨씬 더 작은 것으로 밝혀졌기 때문에 균열이 생겼습니다. 여기에는 Netscape의 SSL(Secure Sockets Layer) 구현(1995년 Ian Goldberg와 David Wagner에 의해 균열됨)과 2008년에 결함이 발견된 OpenSSL의 Debian/Ubuntu 버전이 포함됩니다.[14][15] 구현된 엔트로피의 유사한 부족은 에니그마의 코드를 깨트리는 결과를 가져왔습니다.[16][17]
자격재활용
자격 증명 재활용은 이전의 무차별 공격에서 수집된 사용자 이름과 암호 조합을 재사용하는 해킹 관행입니다. 특별한 형태의 자격 증명 재활용은 해시를 통과하는 것으로, 여기서 소금에 절이지 않은 해시된 자격 증명은 처음에 단순한 강요를 받지 않고 도난되어 재사용됩니다.
깨질 수 없는 코드
특정 유형의 암호화는 수학적 속성에 따라 단순한 힘으로 이길 수 없습니다. 이것의 예로는 원타임 패드 암호법이 있는데, 여기서 모든 명확한 텍스트 비트는 정말로 무작위적인 키 비트 시퀀스로부터 해당 키를 갖게 됩니다. 무차별 공격을 받는 140자의 일회성 패드 인코딩 문자열은 결국 정답을 포함하여 가능한 모든 140자 문자열을 드러낼 것입니다. 그러나 주어진 모든 답변 중에서 어느 것이 정답인지 알 수 있는 방법은 없습니다. Venona 프로젝트에서 수행한 것처럼 이러한 시스템을 물리치는 것은 일반적으로 순수한 암호화가 아니라 키패드가 실제로는 무작위가 아니거나 가로채어진 키패드 또는 운영자가 실수하는 것과 같은 구현상의 실수에 의존합니다.[18]
대책
공격자가 암호화된 자료에 대한 액세스 권한을 얻은 오프라인 공격의 경우 발견이나 간섭의 위험 없이 키 조합을 시도할 수 있습니다. 온라인 공격의 경우, 데이터베이스 및 디렉토리 관리자는 암호를 시도할 수 있는 시도 횟수를 제한하거나, 연속적인 시도 사이에 시간 지연을 도입하거나, 답변의 복잡성을 증가시키는 등의 대응 조치를 배치할 수 있습니다(예: CAPTCHA 답변 요구 또는 다중 요소 인증 사용). 로그인에 실패한 후 계정을 잠급니다.[19][page needed] 웹 사이트 관리자는 특정 IP 주소가 사이트의 모든 계정에 대해 미리 지정된 횟수 이상의 암호 시도를 시도하지 못하도록 방지할 수 있습니다.[20]
역무력 공격
역방향 브루트 포스 공격에서는 단일(일반적으로 일반적인) 암호가 여러 사용자 이름 또는 암호화된 파일에 대해 테스트됩니다.[21] 이 프로세스는 일부 암호에 대해 반복될 수 있습니다. 이러한 전략에서 공격자는 특정 사용자를 대상으로 하지 않습니다.
참고 항목
메모들
- ^ Paar, Pelzl & Preneel 2010, 7쪽.
- ^ Urbina, Ian (2014). "The Secret Life of Passwords. The New Times". The New York Times.
- ^ Schrittwieser, Sebastian; Katzenbeisser, Stefan (2011), "Code Obfuscation against Static and Dynamic Reverse Engineering", Information Hiding, Lecture Notes in Computer Science, Berlin, Heidelberg: Springer Berlin Heidelberg, vol. 6958, pp. 270–284, doi:10.1007/978-3-642-24178-9_19, ISBN 978-3-642-24177-2, retrieved September 5, 2021
- ^ "Secure your site from Brute force attacks using Sebsoft's Anti Hammering Authentication Plugin #MoodlePlugins #MoodleSecurity". elearnmagazine.com. e Learn Magazine. January 16, 2016. Retrieved October 27, 2022.
- ^ "Configure Serv-U to protect against brute force attacks". solarwinds.com. Solar Winds. Retrieved October 27, 2022.
- ^ "Brute Force Attack: Definition and Examples". www.kaspersky.com. October 20, 2020. Retrieved November 8, 2020.
- ^ 란다우어 1961, 183-191쪽.
- ^ 그레이엄 2011.
- ^ Rudisail, B. (November 17, 2022). "Password-cracking With High-Performance GPUs: Is There a Way to Prevent It?". Spiceworks. Retrieved December 24, 2023.
- ^ Pires, F. (October 18, 2022). "Eight RTX 4090s Can Break Passwords in Under an Hour". Future Publishing. Retrieved December 25, 2023.
- ^ Kingsley-Huges 2008.
- ^ Kamerling 2007.
- ^ "November 2019 TOP500 Supercomputer Sites". www.top500.org. Archived from the original on November 19, 2019. Retrieved May 15, 2020.
- ^ Viega, Messier & Chandra 2002, 18쪽.
- ^ CERT-2008.
- ^ 엘리스 2005.
- ^ NSA-2009.
- ^ 레이나드 1997, 86쪽.
- ^ 버넷 & 포스터 2004.
- ^ Ristic 2010, 136쪽
- ^ "InfoSecPro.com - Computer, network, application and physical security consultants". www.infosecpro.com. Archived from the original on April 4, 2017. Retrieved May 8, 2018.
참고문헌
- Adleman, Leonard M.; Rothemund, Paul W.K.; Roweis, Sam; Winfree, Erik (June 10–12, 1996). On Applying Molecular Computation To The Data Encryption Standard. Proceedings of the Second Annual Meeting on DNA Based Computers. Princeton University.
- Cracking DES – Secrets of Encryption Research, Wiretap Politics & Chip Design. Electronic Frontier Foundation. 1998. ISBN 1-56592-520-3.
- Burnett, Mark; Foster, James C. (2004). Hacking the Code: ASP.NET Web Application Security. Syngress. ISBN 1-932266-65-8.
- Diffie, W.; Hellman, M.E. (1977). "Exhaustive Cryptanalysis of the NBS Data Encryption Standard". Computer. 10: 74–84. doi:10.1109/c-m.1977.217750. S2CID 2412454.
- Graham, Robert David (June 22, 2011). "Password cracking, mining, and GPUs". erratasec.com. Retrieved August 17, 2011.
- Ellis, Claire (March 2005). "Exploring the Enigma". Plus Magazine.
- Kamerling, Erik (November 12, 2007). "Elcomsoft Debuts Graphics Processing Unit (GPU) Password Recovery Advancement". Symantec.
- Kingsley-Hughes, Adrian (October 12, 2008). "ElcomSoft uses NVIDIA GPUs to Speed up WPA/WPA2 Brute-force Attack". ZDNet.
- Landauer, L (1961). "Irreversibility and Heat Generation in the Computing Process". IBM Journal of Research and Development. 5 (3): 183–191. doi:10.1147/rd.53.0183.
- Paar, Christof; Pelzl, Jan; Preneel, Bart (2010). Understanding Cryptography: A Textbook for Students and Practitioners. Springer. ISBN 978-3-642-04100-6.
- Reynard, Robert (1997). Secret Code Breaker II: A Cryptanalyst's Handbook. Jacksonville, FL: Smith & Daniel Marketing. ISBN 1-889668-06-0. Retrieved September 21, 2008.
- Ristic, Ivan (2010). Modsecurity Handbook. Feisty Duck. ISBN 978-1-907117-02-2.
- Viega, John; Messier, Matt; Chandra, Pravir (2002). Network Security with OpenSSL. O'Reilly. ISBN 0-596-00270-X. Retrieved November 25, 2008.
- Wiener, Michael J. (1996). "Efficient DES Key Search". Practical Cryptography for Data Internetworks. W. Stallings, editor, IEEE Computer Society Press.
- "Technical Cyber Security Alert TA08-137A: Debian/Ubuntu OpenSSL Random Number Generator Vulnerability". United States Computer Emergency Readiness Team (CERT). May 16, 2008. Retrieved August 10, 2008.
- "NSA's How Mathematicians Helped Win WWII". National Security Agency. January 15, 2009.
외부 링크
- RSA 후원 DES-III 크래킹 대회
- iOS 10.3.3을 실행하는 잠금 상태의 아이폰의 비밀번호를 추측하도록 설계된 단순한 장치 시연
- 우리가 코드북 암호를 해독한 방법 – 코드북에서 도전한 우승팀의 에세이