본문 바로가기

블로그

LG CNS 기술블로그 DX Lounge에서 최신 IT 소식을 만나보세요!

보안

위기를 기회로! 보안 업무에 챗GPT를 활용하는 방법

2023.04.27

오픈 AI에서 개발한 챗GPT(ChatGPT) 열풍이 뜨겁습니다. 출시 5일 만에 사용자 수가 100만 명을 돌파했고, 두 달 만에 1억 명을 넘어섰습니다. 가입자 100만 명 달성까지 넷플릭스는 3년, 인스타그램은 3개월이 걸린 점을 고려하면, 챗GPT의 성장 속도가 얼마나 빠른지 짐작할 수 있는데요.

국내에서도 챗GPT를 업무에 적용하기 위한 움직임이 활발하게 나타나고 있습니다. 최근 과학기술정보통신부는 국내 기업들이 초거대 AI 기술 경쟁력을 확보할 수 있도록 지원하고, 챗GPT와 같은 인공지능 기술의 활용법에 대한 전문가 특강도 개최할 예정이라고 밝혔는데요.

이번 글에서는 보안 사업 영역에서 챗GPT를 효과적으로 활용하는 방법에 대해 알아보겠습니다.

보안담당자가 챗GPT를 활용하는 방법

보안 업무에서 챗GPT를 활용할 수 있는 항목은 다음과 같습니다.

[표1] 보안담당자의 업무에서 챗GPT를 활용할 수 있는 항목

1. 보안정책 가이드라인 초안 작성
최신 트렌드를 파악해 그에 맞는 보안 정책을 수립하는 일은 보안담당자의 주요 업무 중 하나입니다. 챗GPT를 활용하면, 보안 정책 보고서 초안을 만드는 데 도움을 받을 수 있습니다.

[그림 1] 챗GPT가 작성한 챗GPT 활용방안 보고서

[그림 1]은 챗GPT에게 ‘보안 업무에서 챗GPT를 활용할 수 있는 방안’을 보고서 형식으로 작성 요청한 것입니다. 챗GPT는 현재 시스템의 보안 이벤트를 감사하면서 빠른 대응이 가능하고, 정책을 재설정하는 데 사용할 수 있다고 답하고 있는데요. 위와 같이 다소 추상적인 답변도 추가 질문을 통해 구체화할 수 있습니다.

[그림 2] 챗GPT를 활용한 접근 제어 강화 정책 가이드라인 작성

챗GPT는 벨 라파둘라(Bell-LaPadula, 보안 레벨을 기반으로 엄격한 보안 정책을 중앙 집중식으로 관리) 접근통제모델과 달리, 권한에 따라 접근을 통제하는 상세 정책을 제시하지는 않습니다. 그러나 접근제어 시스템을 도입하거나 개발하는데 어떤 요소가 필요한지는 손쉽게 확인할 수 있습니다.

2. 문서구분을 통한 정보 유출 사고 대응
정보 유출이란, 안에서 밖으로 나가는 자산에 대한 위협을 말합니다. 모든 보안담당자는 이를 예방하는 업무를 맡고 있습니다. 외부로 정보가 유출되면 기업의 신뢰도는 낮아지고, 핵심 기술이 유출되면 기업 경쟁력도 약화됩니다. 또한 내부적으로 혼란을 야기해 직원들의 사기 저하나 외부 감사가 발생할 수 있습니다.

[그림 3] 업무/비업무 구분 성공사례 (업무)

정보 유출 위협을 막기 위해서는 외부에 유출되는 정보가 업무와 관련된 파일인지, 개인적인 파일인지 구분을 해야 하는데요. 챗GPT는 문서의 목적을 분류하는데 활용될 수 있습니다. [그림 3]과 같이, 챗GPT에게 업무 지시나 공지사항 유형의 글을 분류해달라고 요청하면, 업무 목적으로 작성된 문서임을 구분하는 걸 확인할 수 있습니다.

3. 시큐어 코딩 가이드
보안은 소프트웨어 개발의 필수 요소입니다. 개발자가 보안에 대한 이해 없이 소스 코드를 작성한다면 보안 취약점은 필연적으로 발생하게 됩니다. 그러나 현실적으로 모든 개발자가 보안 전문가처럼 보안에 대해 깊게 생각하거나 공부할 수는 없습니다. 챗GPT는 보안 비서로서 개발자의 업무를 보조할 수 있습니다.

[그림 4] SQL Injection 취약점을 찾아낸 챗GPT

[그림 4]에서 챗GPT는 SQL Injection(입력값을 조작하여 서버의 데이터베이스를 공격할 수 있는 공격 방식) 취약점이 있는 소스 코드를 수정해야 안전하다고 안내하며, 수정한 코드를 제시해 주고 있습니다. 챗GPT는 전체적인 문맥을 인지할 수 있기 때문에, 질문에서 가이드를 구체화하면, 더욱 정교한 정보를 얻을 수 있습니다.

[그림 5] 패스워드 해싱(Hashing) 기능을 구현한 챗GPT

예를 들어, “비밀번호 저장은 일방향 암호화가 필요하다”는 가이드라인을 명시해 보겠습니다. 챗GPT는 [그림 5]와 같이 패스워드를 해싱(Hashing, 디지털 숫자열을 원래의 것을 상징하는 더 짧은 길이의 값이나 키로 변환하는 것)이나 암호화해 저장하는 것을 권장한다고 언급합니다. 챗GPT에게 구현하고자 하는 것을 막연히 한 줄로 제시하기보다, 구체적인 가이드라인를 주면 이를 통해 코드를 수정함을 확인할 수 있습니다.

보안 가이드라인이 요소마다 적절하게 구성돼 개발자들이 적재적소에 필요한 가이드라인을 활용할 수 있다면, 보안 위협을 줄일 수 있을 것입니다. 특히 보안을 잘 모르는 개발자가 인공지능과 가이드라인을 활용하면 취약점을 만들어낼 위협 요소를 줄이는 시큐어 코딩을 할 수 있습니다.

4. 패킷 내부 패턴 분석
관제팀은 24시간 쉴 틈 없이 시스템을 통제하고 수백만 개의 패킷(packet, 네트워크를 통해 전송하기 쉽도록 자른 데이터의 전송 단위)을 처리합니다.

[그림 6] 패킷에서 명령어를 찾는 챗GPT

챗GPT에 [그림 6]과 같이 패킷 내부의 데이터를 제시해 주면, 명령어나 Injection 등 특정 문자열 패턴을 손쉽게 발견합니다. 취약점을 활용한 악성 행위는 기존 명령 구문과 형식 및 방식이 유사한 경우가 많은데요. 이때 챗GPT를 패킷 내 명령어나 소스 코드와 같은 문자열 패턴 탐지에 충분히 활용할 수 있습니다.

챗GPT를 활용한 보안 업무의 향후 전망

지금까지 보안 정책 가이드라인 작성부터 정보 유출 텍스트 분석까지 보안 업무 전반에서 챗GPT 를 활용하는 방법을 살펴봤습니다. 특히 취약점과 패턴 파악 부분에서 챗GPT는 높은 활용 가능성을 보였는데요. 사내에서 보안 가이드라인을 명확하게 구성한다면, 보안을 잘 모르는 개발자들도 AI의 도움으로 개발 리스크를 낮출 수 있습니다. 또한, 24시간 쉴 틈 없이 비슷한 형태의 데이터를 살피는 관제팀에게도 자동화 도구로 사용될 수 있습니다.

물론 챗GPT의 한계도 존재합니다. 챗GPT의 텍스트 분석과 답변 능력은 뛰어나지만, 답변에 허위 사실이 포함되더라도 법적으로 책임을 물을 수 없습니다. 따라서, 인공지능 챗봇을 활용할 때는 반드시 사람이 결과물을 점검해야 합니다. 챗GPT에게 아이디어를 구현해달라고 요청할 때는 구체적으로 작성해야 하며, 창의적인 답변을 원한다면 창의적인 질문을 해야 합니다. 챗GPT와 함께 사람의 역할도 함께 성장하는 것이죠.

이제 인공지능은 특정 분야에서만 누리는 기술적 혜택이 아니라 누구나 사용할 수 있는 기술이 됐습니다. 챗GPT를 활용해 업무 역량을 높이고, 혁신에 도전해 보세요.

ChatGPT와 AI 시대의 보안전문가 생존전략 자세히 보기

글 ㅣ LG CNS 보안서비스 Innovation팀 권홍균

챗봇과 대화를 할 수 있어요