테크레시피

챗GPT 생성 코드가 반드시 안전하지는 않다

챗GPT 같은 AI 채팅봇은 인간처럼 텍스트를 처리할 뿐 아니라 코드를 작성할 수도 있다. 하지만 이 코드가 안전한지 검증하자 보안사 문제가 있는 코드가 출력되는 일도 있으며 챗GPT 자신도 이 취약성을 이해하고 있는 것으로 나타났다고 한다.

퀘벡대학 연구팀은 해당 문제에 대해 조사한 결과를 논문 공개 사이트인 아카이브에 게재했다. 이에 따르면 챗GPT에 C, C++, 파이썬, HTML, 자바 5개 언어로 21개 다른 프로그램이나 스크립트를 생성시켜본 결과 챗GPT는 그다지 안전하지 않은 코드도 출력한다는 결론에 이르렀다고 한다.

연구팀에 따르면 챗GPT가 처음 작성한 21건 프로그램과 스크립트 중 안전한 건 5건이며 그 외에는 메모리 파괴나 서비스 거부, 부적절한 암호 구현에 의한 취약성 등 문제가 있었다고 한다. 이후 수정을 촉구하면 안전한 프로그램 7건을 생성하는데 성공했는데 이는 평가 대상이 된 특정 취약성에 대해선만 문제를 해소한 것으로 최종 코드를 다른 악용 가능한 취약성이 없다고 단언할 수 없었다고 한다.

연구팀은 이런 문제가 발생한 원인에 대해 코드 실행 적대적 모델을 상정하지 않은 게 원인이라고 지적하고 있다. 하지만 한편 챗GPT 자신은 생성한 코드에 중요한 취약점이 있다는 걸 인식하면서 안전성을 평가하도록 요구하지 않는 한 아무 말도 하지 않는다고 지적되고 있다. 이를 통해 연구팀은 챗GPT가 공격적인 코드 생성을 거부하면서 취약한 코드를 생성한다는 사실에는 윤리적 모순이 있다고 지적했다. 관련 내용은 이곳에서 확인할 수 있다.

추천기사