DOI QR코드

DOI QR Code

The Impact of Generative AI Models on Large-Scale Password Generation for Guessing Attacks

생성형 AI 모델의 대규모 비밀번호 생성 및 추측공격 성능 검증

  • Received : 2024.10.23
  • Accepted : 2024.12.06
  • Published : 2024.12.31

Abstract

In cybersecurity, sophisticated guessing attacks continually challenge the effectiveness of password security measures. This paper investigates the potential of generative artificial intelligence models for large-scale password generation and their implications for guessing attacks. We introduce PassGPT+LLaMa3.2, a hybrid model that combines the strengths of transformer-based architectures with advanced linguistic modeling capabilities to generate highly realistic passwords. Our experiments were conducted on a private dataset, comprising a diverse array of password structures to evaluate the performance of our model in terms of training and testing efficiency. Our findings demonstrate that PassGPT+Llama3.2 significantly enhances the diversity and realism of generated passwords, achieving a training time of 1h 45min and a testing time of 22min. Moreover, our model exhibits higher Hit Rate compare to existing models, indicating its effectiveness in mimicking real-world password patterns. This research underscores the impact of generative AI on password security, highlighting the need for advanced defenses against AI-driven guessing attacks.

비밀번호 추측 공격이 진보하면서 기존 비밀번호 보안 방책의 효율성을 재고할 필요가 있다. 본 논문은 생성형 AI의 대규모 비밀번호 생성에 기반한 추측 공격에 대해 연구하였다. 본 논문에서는 트랜스포머 기반 아키텍처의 장점과 언어 모델이 갖는 실제적인 비밀번호 생성의 장점을 결합한 하이브리드 모델인 PassGPT+Llama3.2를 제안한다. 비밀번호 유출 공개 데이터셋 수집 및 전처리 과정을 거쳐 비밀번호의 다양하고 복잡한 구조를 반영한 데이터셋을 구축하였으며, 이를 활용하여 학습 및 검증을 수행하였다. 본 논문에서 제안한 모델은 학습 시 1시간 45분 소요되었으며, 비밀번호 생성에 22분이 소요되었다. 또한 본 논문에서 제안하는 모델은 기존 모델에 비해 높은 Hit Rate를 보였으며, 이는 실제적인 비밀번호를 생성하는 모델의 우수한 능력을 보여준다. 본 연구는 비밀번호 보안에 있어서의 생성형 AI의 역할을 확인하고 AI 기반 추측 공격에 대한 진보된 방어책이 필요함을 시사한다.

Keywords

I. 서론

비밀번호 보안은 사이버 보안 분야에서 지난 기간 중요하게 다루어진 연구 주제이며, 사용자 인증 시스템의 위협인 비밀번호 추측 공격을 방어하기 위해서는 비밀번호 복잡성 정책이 필수적이다. 많은 연구에서 비밀번호 복잡성의 중요성을 강조했고, 더 강력한 비밀번호가 공격 성공 가능성을 낮춤을 보였다[1]. 이에 따라 구글과 네이버 등의 주요 웹사이트들은 사용자들에게 대문자, 소문자, 숫자, 특수 문자를 포함한 비밀번호를 만들도록 하는 비밀번호 복잡성 정책을 도입했다.

이러한 정책은 다른 플랫폼에서도 찾아볼 수 있다. 일례로, ASUS와 같은 공유기 제조업체들은 기본 비밀번호에 영어소문자, 숫자, 특수 문자를 포함하는 정책을 적용하고 있다. 그러나 실제 비밀번호 데이터셋을 분석한 연구 결과, 비밀번호가 복잡해질수록 사용자들은 오히려 보안을 약화시킬 수 있는 패턴화된 비밀번호를 만드는 경향이 있었다. 예를 들어, 숫자와 특수 문자를 예측 가능한 위치에 배치하거나 특수 문자를 하나만 사용하는 등의 패턴이 생길 수 있으며, 이로 인해 구조기반 추측 공격에 더 취약해질 수 있다[2].

무차별 대입 또는 사전 공격과 같은 이전 방식은 이러한 패턴을 이용하는데 적합하지 않지만, 딥러닝 기반 모델은 내재된 패턴을 파악하는데 우수한 성능을 보인다. 특히 GAN(Generative Adversarial Network)[3]과 같은 생성형 모델은 대규모 데이터 셋에서 복잡한 비밀번호의 구조를 학습할 수 있다. 이런 모델들은 비슷한 특성 및 구조를 가진 새로운 비밀번호를 생성할 수 있으므로 WPA/WPA2 무선 네트워크와 같이 오프라인 비밀번호 공격에 취약한 시스템에 대한 추측 공격의 성공률을 높일 수 있다[4].

따라서 딥러닝 기반의 구조기반 비밀번호 추측 공격의 위험을 평가하고 방어할 수 있는 기술의 개발이 필요하다. 본 논문은 비밀번호 추측 공격에 있어 기존의 딥러닝 모델을 사용한 비밀번호 생성 접근 방식에 대해 분석하고, 기존 모델의 구조를 개선한 새로운 모델인 PassGPT+Llama3.2를 제안한다. 이를 통해 생성형 AI 모델이 비밀번호의 구조를 학습하는 능력 과 비밀번호 추측 공격에서의 효율성을 검증하고자 한다.

본 논문의 주요 기여는 다음과 같다.

⦁ 생성형 AI 모델(PassGAN, PassGPT, PassGPT+Llama3.2)의 비밀번호 생성 능력에 대한 정밀 평가

⦁ 적중률, 훈련 소요시간 측면에서 각 모델의 성능 상세 비교

⦁ 기존 모델에 비해 생성능력과 적중률을 개선한 PassGPT+Llama3.2 모델의 개발

본 논문의 구성은 다음과 같다. 2장에서는 연구 배경을 설명하고, 3장에서는 비밀번호 생성과 딥러닝 분야의 관련 연구를 검토한다. 4장에서는 사용된 데이터셋과 모델을 포함한 방법론을 자세히 설명한다. 5장에서는 모델들의 성능을 비교 분석하고, 공개 데이터셋을 사용한 실험 결과를 제시한다. 마지막으로 6장에서는 연구 결과 및 비밀번호 보안에 미치는 영향에 대한 개요를 제시하고, 향후 연구 방향을 의논하며 논문을 마무리한다.

II. 연구 배경

2.1 비밀번호 보안

비밀번호는 널리 사용되는 인증 방법 중 하나로, 많은 시스템에서 비인가된 사용자의 무단 접근을 막는 장벽 역할을 한다. 범용성이 높은 반면, 약하거나 예측 가능한 비밀번호는 공격에 매우 취약하다. 특히 GPU 발전에 맞춰 무차별 대입 공격의 속도가 빨라지면서 비밀번호 보안과 관련된 위험은 더욱 커지고 있다. 또한 이전의 비밀번호 유출 사태에서 생성된 방대한 양의 실제 비밀번호 데이터셋을 기반으로 공격자들은 비밀번호 목록을 생성하여 사전 공격을 할 수 있으며, 이는 반복되는 패턴을 갖거나 여러 사이트에 걸쳐 재사용되는 등의 약한 비밀번호에 대해 공격 효율성이 높다. 근래의 시스템에서는 로그인 실패가 연속되는 경우 일정 시간동안 로그인 시도를 제한하고 다중 요소 인증(Multi-factor authentication)을 도입하는 등의 방식으로 안전성을 유지하고 있으나, 이러한 방어 메커니즘이 적용되지 않거나 오프라인 공격이 가능한 플랫폼은 추측 공격의 위험성에 노출되어 있다.

디지털화가 급속도로 진행되면서 각 회사 및 시스템은 더욱 강력한 비밀번호 정책을 시행할 필요가 있으며, 새로운 방식을 적용한 비밀번호 추측 공격을 분석하고 경계해야 한다. 공격자들은 획득한 비밀번호를 통해 민감 정보에 접근하거나 다른 네트워크에 침입하는 등 점차 진화하고 있다. 이러한 보안 위협 증대에 따른 안전한 비밀번호 생성과 관리의 중요성이 커지면서 비밀번호 보안은 현대 사이버공격 방어책의 핵심 요소가 되었다.

2.2 비밀번호 추측 공격의 진화

기존의 비밀번호 해킹은 무차별 대입이나 사전 기반 접근법에 의존했다. 무차별 대입 공격에서는 공격자가 가능한 모든 비밀번호 조합을 체계적으로 시도하여 목표한 비밀번호를 찾아낸다. 이 방식은 효과적이나 시간이 오래 소요되고 많은 컴퓨팅 자원이 필요하다. 사전 공격은 이를 개선하여 흔한 비밀번호나 유출된 비밀번호로 추측 범위를 제한함으로써 시도 횟수를 크게 줄였다. 하지만 사전 공격은 사전을 구성하는 비밀번호의 품질에 따라 성공률이 크게 차이난다는 한계점을 갖는다.

컴퓨팅 성능이 향상되면서 공격자들은 레인보우 테이블과 같은 더 정교한 해킹 방법을 활용하기 시작했다. 이는 비밀번호 복구를 가속화하기 위해 해시값을 미리 계산해 놓는 방식이다. 그러나 전통적인 방법들은 높은 복잡성을 갖는 비밀번호를 해킹하는 데에 한계가 있다. 이는 비밀번호 데이터셋을 분석하여 목표 지향적인 추측이 가능한 기계학습 및 AI 기반 추측 공격을 부상하게 했다.

최근 생성형 AI 접근법을 포함한 딥러닝 모델이 비밀번호 생성과 해킹에 이용되기 시작했으며, 이 모델들은 유출 또는 실제 사용되는 대규모 비밀번호 데이터셋을 학습함으로써 비밀번호의 구조, 패턴, 복잡성을 모방하는 새로운 비밀번호를 만들어낼 수 있다. 무차별 대입과 사전 공격에서 AI 기반 기술로의 전환은 비밀번호 보안의 판도를 바꾸었다.

2.3 AI 기반 비밀번호 생성

생성형 AI 모델은 특정 구조를 갖는 다양한 비밀 번호를 대량으로 만들어 낼 수 있어 효율적인 추측 공격 방식이 될 수 있다. 이러한 목적으로 가장 많이 사용되는 모델은 GAN과 트랜스포머(Transformer)[5] 기반의 아키텍처가 있고, 이들 모델은 텍스트 생성에 있어서의 효율성이 입증되었다. 이 모델들은 대규모 비밀번호 데이터셋의 패턴을 포착해 실제 사용되는 비밀번호와 매우 유사한 새로운 비밀번호를 생성할 수 있다.

2019년에 소개된 PassGAN[6]은 비밀번호 생성에 GAN을 적용한 선구적인 사례이다. PassGAN은 대규모 유출 데이터셋에서 비밀번호 분포를 학습하여 GAN 기반의 비밀번호 추측 공격을 시도했다. PassGAN은 생성기와 판별기 모델을 사용하여 생성한 비밀번호의 품질을 반복적으로 개선함으로써, AI 기반 비밀번호 해킹 분야에서 큰 진전을 이루었다.

GPT(Generative Pre-trained Transformer)[7] 계열에서 파생된 트랜스포머 기반 모델들은 비밀번호 생성을 한 단계 더 발전시켰다. 이 모델들은 데이터의 구조적 순서를 이해하고 학습 데이터를 바탕으로 일관된 출력을 생성하는 데 뛰어나다. 비밀번호 생성에 있어 실제 비밀번호 데이터셋에서 발견되는 패턴을 따르는 동시에 더 복잡하고 현실적인 비밀번호를 만들어낼 수 있음을 보여주었다. 트랜스포머 모델의 유연성과 적응성은 비밀번호 보안 연구에 있어 강력한 도구로 활용할 수 있다.

비밀번호 생성 및 추측 공격에 대한 생성형 AI 모델의 적용은 공격과 방어 양쪽 사이버 보안 전략에 새로운 가능성을 열었다. 공격자들은 이 모델들을 이용해 비밀번호 추측 공격에서 효과적인 추측 데이터를 생성할 수 있다. 다른 한편, 보안 연구자들은 이 모델들을 사용하여 비밀번호 정책의 강도를 테스트하고 더 안전한 인증 메커니즘 및 정책을 개발할 수 있다.

III. 관련 연구

최근 몇 년간 보안 검증을 위해 비밀번호 해킹 및 생성의 새로운 방식에 대한 연구가 이루어지며 딥러닝과 생성형 모델을 사용하는 것에 대한 관심이 높아졌다. GAN, 트랜스포머 기반 모델, RNN(Recurrent Neural Network) 등 다양한 모델이 비밀번호 생성과 추측 공격에 큰 잠재력을 보여주었다.

이 분야의 선구적인 연구 중 하나는 GAN을 비밀번호 생성에 적용한 PassGAN 모델이다. PassGAN은 데이터셋에서 학습한 분포를 바탕으로 비밀번호를 생성하는 새로운 접근법을 소개했다. 이 모델은 GAN이 구조화된 비밀번호를 생성하여 추측 공격에서 높은 성공률을 보임으로써 전통적인 무차별 대입과 사전 기반 공격보다 뛰어난 성능을 낼 수 있음을 보였다. PassGAN은 대규모로 유출된 비밀번호들과 유사한 비밀번호를 생성할 수 있는 능력을 입증하여 AI 기반 비밀번호 추측공격에 대한 연구를 크게 진보시켰다[6].

PassGAN 이후, 자연어 처리에 뛰어난 성능을 보이는 트랜스포머 기반 모델에 대한 연구가 진행되었다. PassGPT는 GPT 아키텍처를 활용한 트랜스포머 기반의 새로운 비밀번호 생성 모델이다. 적대적 훈련에 의존하는 GAN과 달리, GPT 모델은 데이터 셋의 순차적 패턴을 학습하여 복잡한 구조를 가진 비밀번호를 생성할 수 있다. PassGPT는 GPT 모델의 구조적 순서를 이해하는 능력을 활용해 현실적일뿐만 아니라 실제 사용자 비밀번호에서 발견되는 복잡한 패턴을 모방할 수 있는 비밀번호를 생성하는 데 성공했다[8].

또 다른 주목할 만한 연구는 RNN을 사용하는 방식이다. RNN은 데이터 시퀀스로 작업하도록 설계되어 순차적인 구조를 포착할 수 있어, 비밀번호 구조를 모델링하는 데 적합하다. 연구에 따르면 RNN 기반 모델은 이전에 사용된 비밀번호 시퀀스를 효과적으로 학습하여 유사한 특성을 가지면서도 약간의 다양성을 갖는 새로운 비밀번호를 생성할 수 있다[9]. 이러한 모델들은 이전 입력값을 기억하는 능력으로 맥락상 더 관련성이 높은 비밀번호를 생성할 수 있다.

한편 VAE(Variational Autoencoder)[10]도 비밀번호 생성에 활용되었다. 생성 모델의 한 종류인 VAE는 복잡한 분포를 학습하고 그로부터 샘플을 생성할 수 있다. 비밀번호 생성의 맥락에서 VAE는 비밀번호 데이터셋으로 학습되어 다양하고 실제와 유사한 비밀번호를 생성하면서도, 생성된 비밀번호가 특정 제약이나 구조를 따르도록 할 수 있다[11,12,13].

이러한 모델들 외에도, 다른 연구들은 여러 구조의 장점을 결합하는 것을 목표로 하는 하이브리드 접근법의 사용을 조사했다. 이러한 하이브리드 접근법은 GAN의 생성 능력, 트랜스포머의 순차적 구조 이해, RNN과 VAE의 맥락 모델링 능력의 균형을 맞추기 위해 진행되었다. 예를 들어, 비밀번호 분포를 학습하는 GAN의 능력과 일관된 텍스트 시퀀스를 생성하는 트랜스포머의 능력을 결합하면 더 정확한 비밀번호 추측이 가능하다. 하이브리드 모델은 단일 모델 접근법에서 놓칠 수 있는 희귀하고 더 복잡한 비밀번호 구조 생성에 있어 장점을 갖는다[14].

이러한 발전을 바탕으로 본 논문에 제안하는 PassGPT+Llama3.2 모델은 기존의 PassGPT 구조를 개선하여 Llama3.2를 통합하였다. Llama3.2 모델은 기존의 PassGPT에서 사용된 GPT-2에 비해 더 큰 매개변수 규모로 해당 모델을 비밀번호 생성에 적용 시 더 정교하고 유연한 비밀번호 생성 및 실제 비밀번호 구조를 바탕으로 다양한 비밀번호를 생성할 수 있다.

비밀번호 생성을 위한 생성 모델에 대한 연구는 공격과 방어 양쪽의 사이버 보안 전략에 큰 영향을 미쳤다. 공격자들은 이러한 모델을 활용하여 비밀번호 추측 공격을 강화할 수 있는 반면, 사이버 보안 전문가들은 이를 사용하여 비밀번호 정책의 견고성을 테스트하고 인증 메커니즘을 개선한다. PassGAN에서 PassGPT+Llama3.2와 같은 트랜스포머 기반 하이브리드 아키텍처로의 발전은 AI 기반 비밀번호 생성 공격의 잠재성을 보여주며, 더 안전한 비밀번호 정책의 필요성과 효과적인 공격 시뮬레이션 가능성을 시사하고 있다.

IV. 방법론

4.1 AI 기반 비밀번호 생성 모델

본 절에서는 비밀번호 생성에 사용되는 기존 생성형 AI 모델인 PassGAN, PassGPT 및 본 논문에서 제안하는 PassGPT+Llama 3.2에 대해 설명한다. 이러한 모델은 데이터셋의 패턴을 학습하고 동일한 패턴을 갖는 대량의 비밀번호룰 생성할 수 있다.

4.1.1 PassGAN

PassGAN은 서로 경쟁하는 두 개의 신경망인 Generator G와 Discriminator D로 구성된 GAN 기반 모델이다. GAN의 주요 특징은 두 신경망이 minimax 게임을 통해 서로 적대적으로 학습하는 것이다. 이 과정에서 Generator G는 랜덤 노이즈로부터 데이터를 생성하는 역할을 하며, Discriminator D는 입력된 데이터가 실제 데이터인지 Generator가 생성한 데이터인지 판별하는 기능을 수행한다.

minGmaxDEx~Pdata(x)[logD(x)] + Ez~Pz(z)[log(1 - D(G(z)))]       (1)

GAN의 목적 함수는 식 (1)로 나타낼 수 있으며, 이 때 x는 실제 데이터를 나타내고 z는 latent space로부터 샘플링 된 랜덤 노이즈를 의미한다. 해당 수식은 Discriminator D가 실제 데이터 x에 대해 높은 확률을 출력하도록 유도하고, Generator G가 생성한 데이터에 대해서는 낮은 확률을 출력하도록 학습하는 과정을 설명한다.

PassGAN은 실제 비밀번호 데이터로부터 확률 분포를 학습하여 실제 데이터와 유사한 비밀번호를 생성하는 것을 목표로 한다. 이러한 목표를 달성하기 위해 Fig. 1.와 같은 구조의 Generator G와 Discriminator D는 반복적으로 업데이트되며, 서로의 성능을 개선하기 위해 경쟁한다. 이러한 경쟁적인 학습 방식을 통해 PassGAN은 실제 비밀번호 데이터의 분포를 효과적으로 모사할 수 있다.

JBBHCB_2024_v34n6_1557_5_f0001.png 이미지

Fig. 1. Generator and Discriminator Architecture in PassGAN

그러나 GAN은 유사한 구조의 비밀번호를 생성하는 데 효과적이지만, 장기 의존성과 문맥을 포착하는 능력이 다소 제한적이다. 이로 인해 복잡한 구조의 비밀번호에 대해서는 최적의 성능을 발휘하지 못할 수 있다는 한계가 있다. 특히, 비밀번호가 길고 다양한 문자 조합으로 이루어진 경우, 이러한 특성을 잘 반영하기 어렵다.

4.1.2 PassGPT

PassGPT는 GPT-2 구조를 기반으로 한 비밀번호 생성 모델로, Fig. 2.과 같이 이전 문자를 기반으로 n번째 위치에서의 문자를 autoregressive하게 예측한다. 이 모델은 이전에 생성된 문자들을 입력으로 사용하여 각 위치에서 다음 문자의 확률 분포를 계산하는 방식으로 작동하며, 비밀번호의 각 문자를 순차적으로 생성하는 과정을 통해 전체 비밀번호를 생성한다.

JBBHCB_2024_v34n6_1557_5_f0002.png 이미지

Fig. 2. PassGPT Training Process (Green: correct prediction; Red: incorrect prediction)

PassGPT의 학습 목표는 입력된 비밀번호 시퀀스에 대해 각 위치에서 올바른 문자를 예측하도록 하는 것이다. 이를 위해 모델은 Cross-Entropy Loss를 사용하여 실제 비밀번호와 모델의 예측 간의 차이를 최소화하도록 학습된다.

이러한 학습 과정을 통해 PassGPT는 비밀번호의 패턴과 규칙성을 학습하여 새로운 비밀번호를 생성하거나 기존의 비밀번호를 복원할 수 있는 능력을 갖추게 된다. 특히 각 문자의 위치에 대한 정보를 고려하여 문맥을 보다 잘 반영할 수 있으며 이는 복잡한 비밀번호 구조를 이해하고 생성하는 데 효과적이다.

해당 연구에서 사용한 GPT-2[15] 모델의 경우, GPT-2 시리즈 중 가장 작은 모델로 124M의 파라미터를 가진다. 이는 상대적으로 최근의 LLM에 비해 작은 규모이지만, 상대적으로 학습 및 추론 시간이 짧다는 이점이 있다. 그러나 모델의 크기가 작을 경우 복잡한 패턴을 학습하고 표현하는 데 어려움이 있다. 따라서 복잡한 비밀번호의 구조를 효과적으로 학습하기 위해서는 더 큰 모델과의 조합을 고려해야 할 필요가 있다.

4.1.3 PassGPT+Llama3.2

본 논문에서는 PassGPT의 구조를 개선하여 Llama3.2[16]를 통합한 새로운 모델인 PassGPT+Llama3.2를 제안한다. Llama3.2는 Meta에서 2024년 9월에 출시한 최신 언어 모델로, 가지치기(pruning) 및 지식 증류(knowledge distillation) 기법을 통해 기존 모델보다 효율적으로 경량화 된 1B 및 3B 버전을 제공한다.

이러한 기법을 통해 모델의 파라미터 수를 줄이면서도 성능을 유지하거나 개선할 수 있어, 더 빠르고 효율적인 추론이 가능하다.

가지치기(pruning)는 모델에서 불필요한 파라미터를 제거하여 경량화를 이루는 기술로, 불필요한 계산을 줄여 메모리 사용량과 계산 비용을 감소시킨다. 반면, 지식 증류(knowledge distillation)는 큰 모델(teacher model)의 지식을 작은 모델(student model)에 전달하여, 작은 모델이 큰 모델과 유사한 성능을 내도록 학습하는 방법이다. 이 두 가지 기법을 통해 Llama3.2는 상대적으로 작은 파라미터를 가지면서도 강력한 성능을 유지할 수 있는 장점을 지닌다.

비밀번호 생성 및 예측 작업에서 대규모 모델을 사용할 경우, 일반적으로 더 복잡한 패턴과 규칙을 포착할 수 있는 능력이 향상된다. 이는 비밀번호의 복잡한 패턴과 변형을 더 잘 학습할 수 있어, 실제 환경에서의 다양한 비밀번호 규칙을 효과적으로 이해할 수 있는 모델을 구축할 수 있다. 하지만 모델의 크기가 커질수록 추론 시간이 증가하는 문제가 발생할 수 있으며, 이는 실시간 응답이 중요한 상황에서는 비효율적일 수 있다. 따라서 본 연구에서는 패턴 인식 능력과 추론 시간의 균형을 고려하여 Fig. 3.과 같은 구조를 바탕으로 Llama3.2를 PassGPT와 결합하였다. 이를 위해 PassGPT의 GPT-2 부분을 Llama3.2로 대체하는 방식을 사용하였다.

JBBHCB_2024_v34n6_1557_6_f0001.png 이미지

Fig. 3. PassGPT+Llama3.2 Training Process

PassGPT 구조에 Llama3.2를 통합함으로써 비밀번호의 구조적 특성과 문맥 정보 포착 능력을 향상시켰다. 비밀번호는 주로 영문자, 숫자, 특수 문자의 조합으로 이루어져 있으며, 이들 사이의 관계나 빈도 패턴은 매우 복잡할 수 있다. 이러한 패턴을 보다 효율적으로 학습함으로써, 모델은 실제 비밀번호의 규칙성을 더 잘 파악할 수 있다.

V. 실험 및 결과

이 장에서는 생성형 AI 모델을 개발하기 위해 사용한 비밀번호 데이터 수집과 생성 및 처리 방법을 설명한다. 생성형 모델의 효율적 훈련을 위해 실제적인 비밀번호의 구조를 반영하는 데이터셋을 생성하는 것을 목표로 설정했다. Fig. 4.는 연구에 적용된 방법론을 간략히 표현한 그림이다.

JBBHCB_2024_v34n6_1557_6_f0002.png 이미지

Fig. 4. The proposed pipeline methodology

5.1 데이터 수집

첫 번째로 공개된 패스워드 유출 데이터셋과 보안 연구 아카이브로부터 비밀번호를 수집했다. 이러한 비밀번호 데이터 세트에서 중복 또는 형식에 어긋난 비밀번호, 약한 비밀번호를 제거하여 결과적으로 실제적인 비밀번호 구조를 반영할 수 있도록 하였다. 수집한 공개 데이터셋에 대해 비밀번호 데이터가 특수문자를 포함하고 있지 않은 경우, 복잡성 기준을 충족할 수 있도록 알파벳에서 숫자로 변하는 지점 등, 각 구조의 사이 또는 비밀번호의 앞과 끝에 특수문자 하나를 추가하였다. 본 논문에서 생성한 데이터는 총 67만개의 비밀번호 샘플을 포함하며, 모든 데이터는 숫자와 영문자(대문자와 소문자 중 하나 이상 포함), 특수문자의 세 가지 유형의 마스킹을 포함하고 있다. 또한 길이는 최소 6글자를 넘고, 17글자를 초과하지 않도록 설정하였다. 이로 인해 데이터셋을 기반으로 생성한 비밀번호가 여러 웹사이트들의 복잡성 규칙을 만족하게 하였고, 모델이 더 이상 쓰이지 않는 취약한 비밀번호를 생성하는 경우를 줄이고자 하였다. 실험을 위해 데이터의 80%는 트레이닝 세트로 설정하였고, 나머지 20%를 테스트 세트로 설정하였다. 이렇게 설정함으로써 제안한 모델이 기존 비밀번호 데이터셋의 패턴에 근거한 새로운 비밀번호를 생성할 수 있도록 하였다. 또한 생성한 비밀번호가 테스트 세트와 동일한 비밀번호를 포함하는 것을 목표로 설정하여 적중률을 측정하였다.

이처럼 수집한 실제 비밀번호에 더해 비밀번호 패턴 학습을 통한 규칙 기반 합성 비밀번호를 생성하여, 가능한 비밀번호 구조의 넓은 범위를 포함하고자 하였다.

5.2 실험 설정

본 논문에서는 NVIDIA H100 Tensor Core GPU를 사용하여 모델 학습과 비밀번호 생성 실험을 수행하였다. NVIDIA H100 GPU는 고성능 연산 능력을 제공하며, 특히 딥러닝 모델의 훈련 및 추론 속도를 크게 향상 시킬 수 있다.

PassGAN 모델의 학습은 배치 크기 256으로 설정하여 총 200,000회의 iteration을 수행하였다. 이는 모델이 입력 데이터의 분포를 충분히 학습하여 실제 비밀번호와 유사한 비밀번호를 생성할 수 있도록 한다.

PassGPT 모델의 학습은 배치 크기 1024로 설정하여 전체 학습 데이터셋에 대해 3 epoch 동안 학습을 수행하였다. 이는 모델이 데이터셋의 패턴을 충분히 학습하면서도 과적합을 방지할 수 있는 균형을 이루는 학습 횟수로 설정하였다.

PassGPT+Llama3.2 모델의 경우 Llama3.2의 1B 및 3B 버전을 사용하여 학습을 진행하였다. 해당 모델의 학습은 배치 크기 64로 설정하여 3 epoch 동안 학습을 수행하였다. Llama3.2 모델의 파라미터 수가 GPT-2에 비해 훨씬 크기 때문에, 상대적으로 작은 배치 크기를 사용하여 학습을 안정적으로 수행하였다.

학습된 모델을 사용하여 각각 1,000,000개의 비밀번호를 생성하고, 이를 평가 데이터셋의 비밀번호와 비교하여 식 (2)와 같이 적중률(Hit Rate)을 계산하였다. 이를 통해 모델이 학습 데이터셋의 패턴을 얼마나 잘 일반화하여 평가 데이터셋의 비밀번호를 생성할 수 있는지를 평가하였다.

\(\begin{align}\text {Hit Rate}=\left(\frac{\mid\{\text { Generated PW }\} \cap\{\text { Test set PW }\} \mid}{\mid\{\text { Test set } P W\} \mid}\right) \times 100\end{align}\)       (2)

추가적으로, 각 모델의 학습에 소요된 시간과 1,000,000개의 비밀번호를 생성하는 데 소요된 시간을 측정하여, 모델의 학습 및 추론 효율성을 비교분석하였다.

5.3 실험 결과

5.3.1 비밀번호 생성 결과 비교

Table 1.은 각 모델에 대한 학습 시간, 생성 시간 및 적중률(Hit Rate)을 나타낸다. 적중률은 1,000,000개의 비밀번호를 생성했을 때, 133,928개의 평가 데이터셋에 포함된 비밀번호의 비율로 계산되었다.

Table 1. Password Generation Results

JBBHCB_2024_v34n6_1557_7_t0001.png 이미지

결과적으로, PassGPT+Llama3.2-1B의 경우 PassGAN 대비 약 16.68배, PassGPT 대비 약 2.61배 증가한 적중률을 기록했으며, PassGPT+Llama3.2-3B의 경우 PassGAN 대비 약 17.61배, PassGPT 대비 약 2.76배 높은 적중률을 보였다.

구체적으로 133,928개의 평가 데이터셋 중 PassGAN과 PassGPT 모델은 각각 13개와 83개를 적중한 반면, Llama3.2-1B, Llama3.2-3B 모델은 각각 207개와 219개를 적중하였다. 이는 본 논문의 모델이 데이터셋의 패턴을 일반화하여 학습 데이터셋에 존재하지 않는 유사한 패턴의 고유한 비밀번호를 생성하는 능력이 다른 모델에 비해 뛰어남을 의미한다.

그러나 PassGPT+Llama3.2 모델의 경우, 더 높은 Hit Rate를 달성하는 대신 학습 및 생성에 소요되는 시간이 증가하였다. PassGPT는 비교적 작은 모델 크기로 인해 5분의 학습 시간과 4분의 생성 시간으로 빠른 결과를 제공한 반면, Llama3.2-1B 모델은 1시간 45분의 학습 시간과 22분의 생성 시간이 소요되었다. Llama3.2-3B 모델의 경우 4시간 30분의 학습 시간과 1시간의 생성 시간이 필요하여, 성능과 시간 사이의 절충점을 찾아야 한다는 점을 보여준다.

또한, CUDA 코드를 기반으로 길이에 따른 랜덤한 패스워드 조합을 생성한 결과, GTX 1650 SUPER GPU를 사용하는 환경에서 길이 6의 패스워드를 생성하는 데에 8일, 길이 7의 패스워드를 생성하는 데에 2년이 소요되었다. 그러나 문자열 길이가 8을 초과할 경우에 193년이 넘게 소요되어, 크래킹이 사실상 불가능해진다. 또한 데이터셋 상의 제약조건(영문자, 숫자와 특수문자 1개 포함)만을 만족하는 106개의 랜덤한 비밀번호를 Cuda 코드를 기반으로 생성했을 때 0%의 적중률을 보였다. 따라서 긴 길이의 패스워드를 크래킹 할 때, AI 기반의 접근법이 보다 현실적임을 확인할 수 있었다.

5.3.2 Pre-trained, Instruction-tuned 성능 비교

추가적으로, 앞선 실험에서 사용한 Llama3.2-1B, Llama3.2-3B 모델과 동일한 규모의 Instruction-tuned 버전 모델을 PassGPT의 기본 모델로 사용하여 생성된 데이터 중 학습 데이터 셋과 평가 데이터셋에 포함된 개수를 비교하였다.

Pre-trained 버전인 Llama3.2-1B와 Llama3.2-3B 모델은 각각의 Instruction-tuned 버전인 Llama3.2-1B-Instruct, Llama3.2-3B-Instruct 버전에 비해 학습 데이터셋에 포함된 비밀번호를 더 많이 생성하였고 평가 데이터셋에 대한 성능이 상대적으로 부족했다. 이러한 결과를 다음과 같이 분석하였다.

Pre-trained 버전 모델의 경우 대규모 텍스트 데이터를 통해 일반적인 패턴을 학습하여 학습 데이터셋에서 자주 등장하는 비밀번호 패턴을 잘 재현하는 경향이 있다. 이는 학습 데이터에 대한 기억 능력이 강하기 때문에, 학습 데이터셋에 포함된 비밀번호를 더 정확하게 생성 가능하다. 그러나 이러한 특성으로 인해 새로운 유형의 데이터에 대한 적응 능력을 상대적으로 제한하여 평가 데이터셋에 대한 성능이 떨어질 수 있다.

반면, Instruction-tuned 모델의 경우 특정 지시에 따라 동작하도록 학습되어 학습 데이터에 대한 직접적인 재현보다는 다양한 패턴을 이해하고 생성하는 능력을 강화한다. 이로 인해 새로운 데이터에서도 유연하게 작동 가능하여 Pre-trained 버전에 비해 평가 데이터셋에 대한 향상된 일반화 성능을 보였다.

VI. 결론

본 논문에서는 딥러닝 모델 기반 비밀번호 추측공격의 효율성을 재고하기 위해 기존에 존재하는 공격 모델들을 아키텍처에 따라 분류하였다. 비밀번호 추측공격에 영향을 미치는 요소들은 AI모델이 생성하는 비밀번호의 다양성, 구조의 일반화 성능, 순차적 학습능력이 있으며, 이러한 요소들을 비밀번호 추측공격 AI 모델의 발전 단계인 GAN 모델, 트랜스포머 모델, 하이브리드 모델에서 각각 평가하였다. 또한 기존에 존재하는 생성형 AI 모델인 PassGAN과 PassGPT의 성능을 측정하였고, 새로운 모델인 PassGPT+Llama 3.2를 제안하였다. 본 논문에서 제안한 모델은 기존 모델에 비해 규모가 큰 모델의 사용으로 대규모 데이터셋에서 복잡한 패턴을 학습하는 능력이 뛰어나며, 비밀번호 생성 실험 결과에서 이전의 모델과 비교하여 높은 Hit Rate를 보였다. 이는 AI 모델의 일반화 능력이 향상되고 발전하면서 AI 기반 패스워드 추측공격이 심각한 보안 위협으로 부상할 수 있음을 시사한다. 또한 본 논문에서는 Instruction-tuned 버전의 모델과 Pre-trained 버전의 모델을 비교하여 서술하였다. Pre-trained 모델의 경우 학습 데이터셋에 대한 더 정확한 기억력을 가지므로, 데이터셋과 동일하거나 유사한 비밀번호를 생성하는 데에 유리하다. 반면 Instruction-tuned 모델은 학습 데이터에 대한 직접적인 재현보다는 다양한 패턴을 이해하고 생성하는 능력이 뛰어나 유연한 비밀번호 생성이 가능하여 기존 데이터셋에 비해 많은 변형을 가지는 다채로운 비밀번호를 생성할 수 있다. 이와 같은 서로 다른 특징으로 인해 보안 검토를 위해서 각 플랫폼과 환경에 맞는 훈련 방식을 적용할 수 있다.

그러나 본 논문에서 제안한 모델은 학습 속도 및 패스워드 생성에 있어 이전의 모델과 비교하여 느린 속도를 보였다. 따라서 향후 이러한 단점을 보완하기 위해 모델 최적화 방안 관련 연구를 진행할 예정이다. 또한 본 논문에서는 총 10q개의 비밀번호를 생성하여 적중률을 비교하였으나, 향후 연구에서 109개 이상의 비밀번호를 대량으로 생성하여 적중률을 높임으로써 현실적으로 공격 성공까지 소요되는 시간을 측정하고 보안 위협의 가능성을 보다 정확하게 검토할 예정이다.

References

  1. Dell'Amico, Matteo, Pietro Michiardi, and Yves Roudier, "Password strength: An empirical analysis," 2010 Proceedings IEEE INFOCOM, pp.1-9, Mar. 2010.
  2. Bonneau, Joseph, "The science of guessing: analyzing an anonymized corpus of 70 million passwords," 2012 IEEE symposium on security and privacy, pp. 538-552, May. 2012.
  3. Goodfellow, Ian, et al, "Generative adversarial nets." Advances in neural information processing systems, vol.27, Jun. 2014.
  4. Hashcat, "New attack on WPA/WPA2 using PMKID" https://hashcat.net/forum/thread-7717.html, 2024.10.21
  5. Vaswani, A, "Attention is all you need," Proceedings of the 31st International Conference on Neural Information Processing Systems, pp. 6000-6010, Dec. 2017
  6. Hitaj, Briland, et al, "Passgan: A deep learning approach for password guessing," Applied Cryptography and Network Security: 17th International Conference, ACNS 2019, Bogota, Colombia, June 5–7, 2019, Proceedings 17, pp. 217-237, Jun. 2019
  7. Redford. A, "Improving language understanding by generative pre-training,"
  8. Rando, Javier, Fernando Perez-Cruz, and Briland Hitaj, "PassGPT: password modeling and (guided) generation with large language models," European Symposium on Research in Computer Security, pp. 164-183, Sep. 2023.
  9. Nosenko, Alex, Yuan Cheng, and Haiquan Chen, "Password and pass phrase guessing with recurrent neural networks," Information Systems Frontiers, vol. 25, no. 2, pp. 549-565, Aug. 2023 https://doi.org/10.1007/s10796-022-10325-x
  10. Kingma, D. P, "Auto-encoding variational bayes," arXiv preprintarXiv:1312.6114, Dec. 2013
  11. Yang, Kunyu, et al, "VAEPass: A lightweight passwords guessing model based on variational auto-encoder," Computers & Security, vol. 144, Mar.
  12. J. Wang, Y. Li, X. Chen and Y. Zhou, "Modeling Password Guessability via Variational Auto-Encoder," 2021 IEEE 24th International Conference on Computer Supported Cooperative Work in Design (CSCWD), pp. 348-353, May. 2021
  13. Xiao, Yujia, "PassRVAE: Improved Trawling Attacks via Recurrent Variational Autoencoder," Proceedings of the 2024 3rd International Conference on Cryptography, Network Security and Communication Technology, pp. 98-106, Jan. 2024
  14. Bauer, Luke A., and Vincent Bindschaedler, "Generative models for security: Attacks, defenses, and opportunities". arXiv preprintarXiv:2107.10139, Jul. 2021
  15. Radford, Alec, et al, "Language models are unsupervised multitask learners," OpenAI blog, Vol.1, No.8, 2019
  16. Meta, 'Llama 3.2: Revolutionizing edge AI and vision with open, customizable models.' https://ai.met.a.com/blog/llama-3-2-connect-2024-vision-edge-mobile-devices, 2024.10.21