ChatGPT의 등장과 함께 변화하는 사이버 보안
개요
2022년 11월 30일, 세계 최대 인공지능 연구재단인 미국의 OpenAI에서 대화형 AI 서비스(챗봇)인 ‘ChatGPT’를 공개했다. ChatGPT는 서비스가 공개되자마자 전 세계에서 폭발적인 관심을 받았고, 출시 5일 만에 베타테스트 이용자 수가 100만 명을 넘었다.
[그림 1] 제품·서비스별 100만 유저 도달 기간
챗봇은 낯선 서비스가 아니다. 애플의 ‘시리’, 삼성의 ‘빅스비’, 카카오톡 챗봇 서비스, ‘심심이’와 ‘이루다’같이 우리가 질문하는 내용에 대한 답변을 해주는 서비스를 챗봇이라고 하며, 일상생활에서 한 번쯤 경험해보았을 것이다.
[그림 2] 카카오톡 챗봇 서비스
ChatGPT(Chat Generative Pre-trained Transfer)가 앞서 나열한 챗봇과 다른 점은 2022년 초에 지도·강화 학습을 마친 OpenAI의 ‘GPT-3.5(대규모 언어 모델)’를 미세 조정한 모델로 구축되었다는 것이다.
이렇게 고도화된 AI 기술이 공개되면서 긍정적인 사용 사례도 많이 발표되고 있지만, 강력한 기술은 양면의 날과 같아 악용 사례도 많이 발견되고 있다.
이번 아티클에서는 ChatGPT에 대한 설명과 ChatGPT로 인해 변화하는 사이버 보안에 대한 정보를 제공할 것이다.
ChatGPT란 무엇인가?
ChatGPT는 OpenAI에서 개발한 GPT(Generative Pre-training Transformer) 언어 모델의 변형이다. GPT는 기계 학습을 사용하여 사람과 유사한 텍스트를 생성하는 인공 지능(AI)의 한 유형이다. 인간이 생성한 텍스트의 대규모 데이터 세트에서 학습한 다음 해당 지식을 사용하여 주어진 프롬프트 또는 컨텍스트를 기반으로 자체 텍스트를 생성한다.
ChatGPT는 실시간으로 사용자 입력에 대한 응답을 생성할 수 있는 챗봇 애플리케이션으로 설계되었다. 인간 대화의 데이터 세트에 대해 교육을 받았기 때문에 자연어 대화의 맥락과 구조를 이해하고 적절한 응답을 생성할 수 있다.
ChatGPT의 주요 이점 중 하나는 개인화되고 사용자와 관련된 응답을 생성하는 기능이다. 사용자의 과거 상호 작용, 선호도 및 기타 정보를 고려하여 더욱 정확한 응답을 생성할 수 있다. 따라서 사용자가 쿼리에 대해 개인화되고 정확한 응답을 기대하는 고객 서비스 챗봇과 같은 애플리케이션에 이상적이다.
응답을 생성하는 것 외에도 ChatGPT는 사용자 입력을 분류하는 데 사용할 수 있으므로 사용자 메시지 이면의 의도를 이해하고 그에 따라 응답할 수 있다. 이는 챗봇이 적절한 응답을 제공하기 위해 사용자 메시지 이면의 감정을 이해해야 하는 감정 분석 또는 감정 분류와 같은 애플리케이션에서 유용할 수 있다.
전반적으로 ChatGPT는 사용자가 더욱 자연스럽고 직관적인 방식으로 언어 모델과 상호 작용할 수 있는 혁신적이고 유용한 도구이다. 인간과 같은 응답을 이해하고 생성하는 능력은 챗봇, 고객 서비스, 심지어 언어 번역을 포함한 광범위한 애플리케이션을 위한 강력한 도구이다.
ChatGPT의 등장과 반응
ChatGPT가 처음 발표되었을 때 대중들은 ChatGPT의 자연스럽고 인간과 같은 대화 능력과 이를 활용한 다양한 분야에서의 응용력에 대해 놀랍다는 반응이 대부분이었지만 동시에 고도화된 인공지능 기술에 대한 경계와 회의적이라는 반응도 나타났다.
ChatGPT 때문에 일자리 감소?
고도로 발달한 AI 기술인 ChatGPT 때문에 직업의 안정성이 흔들리고 있다는 여론이 발생하였다. 특히 IT 개발자들의 원성이 눈에 띄었는데, 그 이유는 ChatGPT가 완성도 높은 코드도 단시간에 바로 생성해주기 때문이다. 그뿐만 아니라 코드 리뷰, 코드에 대한 기능 설명, 코드의 오류도 바로 잡아주는 등 개발자들이 하는 업무를 ChatGPT로 대체가 가능하다는 의견이 나오고 있다. 이에 따라 SNS에서는 개발자들이 직업을 잃을 수도 있다는 걱정 섞인 게시글이 많이 올라오고 있다.
하지만 이런 의견에 반박하여 일부는 “ChatGPT는 과거 데이터를 학습하여 짜깁기한 데이터를 내어주기 때문에 새롭고 창의적인 부분에 있어서는 인간을 대체하기 힘들다”라는 의견을 제시했다. 그리고 개발자들이 ChatGPT를 통해 기존 업무에서 해결하기 힘들었거나 시간이 오래 걸리는 작업을 개선하여 더욱 쾌적한 근무 환경이 조성될 수 있다고 말했다.
구글 vs ChatGPT
ChatGPT를 경험한 사용자들은 “구글 검색을 통해 여러 사이트에서 자세한 정보를 찾을 수 있다는 점은 좋지만, 원하는 결과를 찾기 위해선 여러 사이트를 방문해서 결과를 직접 찾고 검증해야 한다는 번거로움이 있다. 하지만 ChatGPT는 질문에 대한 답을 찾기 위한 과정에서 사용자가 웹 사이트를 방문하지 않고 즉각적인 답을 얻을 수 있어서 좋다.”라는 반응이 나오고 있다. 즉, 사용자로선 원하는 결과에 도달하는 시간을 줄여준다는 것이 ChatGPT의 장점이라는 것이다.
이러한 반응이 있자, 구글에서도 우려의 목소리가 나오고 있다. 하지만 구글 검색엔진과 ChatGPT는 분명히 차이가 있다. ChatGPT는 많은 장점이 있지만, 글의 시작 부분에서 말했던 것과 같이 2022년 초에 학습을 마친 언어 모델로 만들어진 AI 챗봇이기 때문에 정보의 최신화가 되어있지 않고, 웹 사이트 검색이 안 되는 등의 한계점도 있다. 반면 구글은 정보의 최신화는 물론이고 전 세계 약 43억 명의 구글 사용자들이 인터넷을 통해 정보를 공유하고 매일 새로운 데이터가 업로드되기 때문에 사용자와 정보의 양에선 압도적인 차이를 보인다.
이처럼 구글과 ChatGPT는 각각의 차이점과 한계점이 존재하기 때문에 이를 보완하기 위해 서로 공생하는 관계가 될 것으로 예상된다.
ChatGPT 사용법 및 유의사항
사용법
- ChatGPT 웹 사이트로 접속
- 회원가입 및 로그인
- 질문 입력창에 질문 작성 후 전송
[그림 3] ChatGPT 사이트 메인 화면
유의 사항
◾ 한글 사용 가능
◽ 테스트 결과, 한글로 질문할 때보다 영어로 질문했을 때 더욱 완성도 높은 답변을 받을 수 있음
◾ 현재 ChatGPT는 베타테스트로 무료지만, 정식 서비스로 출시되면 유료 서비스로 변경 (정식 서비스 출시 일자는 아직 공개되지 않음)
◽ 유료 서비스로 전환 시 서비스 비용은 사용량, 필요한 특정 기능 및 계약 기간과 같은 요인에 따라 달라질 수 있음
◽ OpenAI의 CEO ‘Sam Altman’은 ChatGPT 서버에서 1개의 쿼리마다 1 자릿수 센트의 비용이 발생한다고 트위터에 언급
[그림 4] ChatGPT 서비스 운영 비용
ChatGPT를 활용한 긍정적 사례
ChatGPT는 다양한 쿼리에 대한 응답을 받을 수 있으며 이를 통한 응용 방법도 무수히 많다.
ChatGPT 사용자들은 “ChatGPT로 할 수 있는 것이 무엇인지 찾기보다 할 수 없는 것이 무엇인지 찾는 것이 빠르다”라고 얘기한다.
“awesome-chatgpt-prompts”(https://github.com/f/awesome-chatgpt-prompts)는 ChatGPT 프롬프트에서 자신이 원하는 특정 기능을 수행할 수 있는 약 135개(2022-12-27 기준)의 프롬프트 변경 스크립트를 공개한 사이트이다. 해당 스크립트를 사용하면 스크립트의 특성에 맞는 프롬프트로 변경하여 기능에 특화된 프롬프트를 사용해볼 수 있다.
아래는 사이버 보안에서 ChatGPT를 활용한 긍정적 사례 중 일부를 소개하였다.
가상머신으로 활용
ChatGPT를 가상머신으로 활용하여 다양한 작업을 수행할 수 있다. ChatGPT 버전 패치 이전에는 Docker 컨테이너 배포 및 lynx 브라우징, curl 명령어 등 사용 폭이 넓었지만, 보안상의 이유로 현재는 네트워크상에서의 연결 작업은 제한된 상태이다.
[그림 5] 가상머신으로 활용한 ChatGPT
디지털포렌식에 활용
디지털포렌식 분석가는 ChatGPT를 활용하여 네트워크 트래픽 확인, 로그 분석 등과 같은 작업을 수행하는 데 도움이 되는 사용자 지정 스크립트를 만들 수 있다. [그림 6]은 Tshark를 사용하여 DNS 쿼리 및 응답 주소를 확인하기 위해 ChatGPT에서 생성된 코드이다.
[그림 6] Tshark를 사용하여 DNS 쿼리 및 응답 주소 확인 스크립트
악성코드 분석에 활용
악성코드 분석 도구인 IDA와 같이 바이너리를 디컴파일한 코드를 ChatGPT에게 분석 요청하면 이에 대한 기능 분석 내용을 응답받아볼 수 있으며, 더 자세한 분석을 위해 코드 라인별 설명을 요구할 수도 있다. 이러한 응용을 통해 악성코드 기능 분석을 수행할 수 있다.
[그림 7] IDA로 디컴파일한 코드 분석
(출처 : Twitter - @JusticeRage)
코드 취약점 분석
ChatGPT에 웹쉘 샘플 코드를 입력하고 해당 코드에 익스플로잇 코드가 있는지 분석을 요청하였다. ChatGPT는 아래 그림과 같이 악의적인 목적으로 사용될 수 있는 몇 가지 요소(코드)를 찾아내었다. 이러한 코드 취약점 분석은 비단 웹쉘 코드뿐만 아니라 서비스 중인 사이트와 백엔드 등 일반적인 코드에서도 잠재적인 취약점을 분석할 수 있다.
[그림 8] 취약한 코드를 분석하는 ChatGPT
Yara/Snort 룰 생성
악의적인 행위를 탐지하기 위해 보안 전문가들은 Yara와 Snort 룰을 사용하여 악성 소프트웨어 및 트래픽을 탐지한다. ChatGPT를 이용하면 이러한 룰셋을 간단한 쿼리로 생성이 가능하다.
[그림 9] ChatGPT로 생성한 XSS Yara 룰
[그림 10] ChatGPT로 생성한 SQL Injection Snort 룰
보고서 작성
버그바운티나 기타 보고서를 작성할 때도 ChatGPT를 이용하면 정형화된 형식으로 보고서를 생성할 수 있다. 아래 그림은 XSS 공격에 대한 버그바운티 보고서를 생성한 결과이다.
[그림 11] ChatGPT로 생성한 버그바운티 보고서
(출처 : Twitter - @athul_krishnan)
ChatGPT를 악용한 부정적 사례
사이버 보안 연구원들은 ChatGPT를 이용해 사이버 보안의 방어와 공격 프로세스를 간단히 만들게 도움을 줄 수 있으며 이는 ‘Cobalt Strike’와 ‘Metasploit’과 같은 인기 있는 침투 테스트와 공격 시뮬레이션 소프트웨어와 비교될 수 있다. ChatGPT는 사이버 보안의 양날의 검처럼 정상적인 용도로 사용하면 도움이 되는 소프트웨어지만, 현실에서는 사이버 사기꾼들과 악의적인 해킹 그룹들이 공격 대상 시스템을 침투하기 위해 인기 있는 도구로 사용된다.
다음은 ChatGPT를 악용한 부정적 사례들이다.
피싱 캠페인에 악용
피싱 캠페인은 공격에 성공하기 위해 점점 더 정교하게 피싱 방법을 변화시키고 있다. 해커들은 ChatGPT를 사용하여 공격 대상자들을 피싱 사이트로 유도하는 피싱 메일을 생성할 수 있다. 아래 그림은 ChatGPT를 이용하여 메일 수신자가 링크를 클릭할 가능성이 큰 이메일 내용을 작성한 예시이다.
[그림 12] ChatGPT로 생성한 피싱 메일
악성코드 제작
ChatGPT는 보안 정책상 악의적인 행위에 사용되지 못하도록 설정되어 있다. 하지만 해커와 보안 전문가들은 보안 정책을 우회하여 악성코드를 생성하는 데 성공했다. 아래 그림은 Picus Labs 부사장 Suleyman Ozarslan이 공개한 ChatGPT 보안 정책을 우회한 랜섬웨어 코드 생성의 스크린샷이다.
[그림 13] ChatGPT로 생성한 랜섬웨어 코드
(출처 : Dr. Suleyman Ozarslan and Picus Security)
가짜 뉴스
ChatGPT로 가짜 뉴스를 작성하여 사회에 혼란을 줄 수 있다. ChatGPT는 인간 언어의 문맥에 특화된 언어 모델을 사용하고 있으므로 ChatGPT가 작성한 글을 사람이 읽어도 크게 어색한 문맥이 없으며 가상의 내용도 스스로 생각하여 글을 작성할 수 있기 때문에 이를 악용하면 가짜 뉴스와 같은 거짓된 정보를 전달할 수 있다.
아래 그림은 ‘애플’ 기업이 파산한 가상의 기사를 ChatGPT로 작성한 내용이다.
[그림 14] ChatGPT로 작성한 가짜 뉴스
ChatGPT의 한계
ChatGPT는 우수한 기능으로 결과를 도출해내지만, 항상 만족스러운 결과를 주는 것은 아니다. 다음은 ChatGPT의 실질적인 한계와 제한 사항에 관한 내용이다.
◾ 때때로 그럴듯하게 들리지만 부정확하거나 무의미한 답변을 작성한다.
◾ 질문(쿼리)의 입력 문구를 수정하거나 같은 프롬프트를 여러 번 시도하는 데 민감하다.
◽ 예를 들어, 질문을 했을 때 원치 않은 답변을 받더라도 문구를 약간 수정하면 올바른 답변을 받을 수 있다.
◾ 종종 지나치게 장황하거나 ‘OpenAI에서 학습한 언어 모델’이라고 다시 언급하는 등 특정 문구를 과도하게 사용한다.
◽ 이러한 문제는 교육 데이터의 편향과 과도한 최적화 문제에서 발생한다.
◾ OpenAI는 ChatGPT 모델이 부적절한 요청을 받으면 이에 대한 답변을 거부하도록 설정했지만, 질문의 유형에 따라 부적절한 요청을 인지하지 못하고 이에 응답하거나 편파적인 행동을 보일 수 있다.
◽ 이러한 행동을 보이는 이유는 ChatGPT가 Moderation API를 사용하여 특정 유형의 부적절한 콘텐츠를 경고하거나 차단하지만, 일부 오탐 및 미탐이 있을 것으로 예상한다.
◾ ChatGPT는 방대한 훈련 데이터에 의존하기 때문에 확장성이 제한적이다.
◽ ChatGPT는 감독형 머신 러닝 접근 방식을 사용하여 모델을 훈련하므로 크고 다양한 대화 데이터 세트가 필요하다. 데이터 세트는 Reddit, Twitter 및 다양한 커뮤니티를 비롯한 다양한 소스의 대화로 구성된다. 이를 통해 모델은 자연어 패턴을 학습하고 대화가 구성되는 방식을 이해할 수 있다. 그러나 데이터 세트가 클수록 모델을 확장하기가 더 어려워진다.
ChatGPT(AI)로 인한 사이버 보안 예측
전반적으로 ChatGPT의 개발 및 배포는 사이버 보안 분야에서 상당한 영향을 미칠 것으로 보인다. ChatGPT 및 기타 AI 기술은 조직과 개인이 사이버 위협을 방어하는 능력을 향상시킬 수 있는 가능성을 가지고 있지만, 잠재적인 위험과 문제를 고려하고 이러한 위험을 완화하기 위한 적절한 조치를 취하는 것이 중요하다.
위 내용에서 언급한 바와 같이 ChatGPT를 활용하면 ▲디지털포렌식에 활용 ▲악성코드 분석 ▲취약점 분석과 같이 사이버 보안 분야의 전반적인 업무에서 긍정적인 활용이 가능하지만 반대로 악의적인 사용자가 사용한다면 ▲피싱 캠페인에 악용 ▲악성코드 제작 ▲가짜 뉴스 배포 등의 부정적인 영향도 미칠 수 있으므로 이를 해결하기 위해 서비스 관리자는 부적절한 쿼리에 대한 검증과 지속적인 관리 및 모니터링이 필요하며, 서비스 이용자들도 악의적인 쿼리 사용을 자제하고 보안 취약점이 발견되면 즉시 신고를 통해 양질의 서비스를 받도록 노력해야 한다.
AI 기술은 빠르게 발전하고 있으며 사이버 보안 분야의 잠재적 응용 분야는 방대하다. AI는 지루한 보안 작업을 자동화하고 정교한 위협을 발견하며 대응 시간을 개선할 수 있다. 그러나 AI만으로는 사이버 위협으로부터 조직을 보호하기에 충분하지 않다. AI 기반 보안 시스템은 기본 모델 및 데이터만큼만 효과적이므로 제대로 작동하려면 사람의 관리·감독이 필요하다. AI 보안 솔루션을 구동하는 시스템과 알고리즘을 정의하고 개선하려면 인간의 전문성이 여전히 필요하다.
출처
[1] ChatGPT
[2] OpenAI - ChatGPT
https://openai.com/blog/chatgpt/
[3] ChatGPT란 무엇이고 어떻게 미디어 산업을 혁신할 것인가?
https://ebadak.news/2022/12/04/what-is-chatgpt/
[4] ChatGPT-Wiki
https://en.wikipedia.org/wiki/ChatGPT
[5] ChatGPT, 출시 5일만에 100만명이 사용한 AI 챗봇이 궁금하다면?
https://modulabs.co.kr/blog/chatgpt/
[6] 요즘 인공지능 미쳤습니다.. 현직 개발자 반응!
[7] Sam Altman Twitter
https://twitter.com/sama/status/1599671496636780546
[8] Will ChatGPT remain free? Can it replace software engineers? What does it mean for future business opportunities and job market?
[9] How Many People Use Google in 2022? (Users Statistics)
https://wpdevshed.com/how-many-people-use-google/
[10] Predictions Of Evolving Cyber Threat Landscape With The Advent Of ChatGPT And Its Limitations
[11] Building A Virtual Machine inside ChatGPT
https://www.engraved.blog/building-a-virtual-machine-inside/
[13] How ChatGPT is changing the way cybersecurity practitioners look at the potential of AI
[14] Playing with a smart ChatBot (chatGPT) - how can it help hackers
https://twitter.com/maikroservice/status/1599525095675789312
[15] ChatGPT를 이용하여 웹쉘(Webshell)을 분석하게 하자!!
https://www.youtube.com/watch?v=6TpE0BMKhmg
보안관제센터 MIR Team
https://www.cyberone.kr/news-trends-detail?id=97052&page=1
'03.Security' 카테고리의 다른 글
포렌식 (1) | 2023.03.24 |
---|---|
방화벽 - 웹 방화벽 (WAF, Web Application Firewall) (1) | 2023.03.18 |
암호화 - 키 관리 (0) | 2023.01.30 |
2023 - 보안 핫키워드 (0) | 2023.01.02 |
디지털 건전성(Digital Soundness) (0) | 2022.11.16 |