[go: up one dir, main page]

KR102763461B1 - 생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법 - Google Patents

생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법 Download PDF

Info

Publication number
KR102763461B1
KR102763461B1 KR1020240104932A KR20240104932A KR102763461B1 KR 102763461 B1 KR102763461 B1 KR 102763461B1 KR 1020240104932 A KR1020240104932 A KR 1020240104932A KR 20240104932 A KR20240104932 A KR 20240104932A KR 102763461 B1 KR102763461 B1 KR 102763461B1
Authority
KR
South Korea
Prior art keywords
malicious
script
generated
electronic device
function set
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR1020240104932A
Other languages
English (en)
Inventor
정성훈
황용석
Original Assignee
주식회사 안랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 안랩 filed Critical 주식회사 안랩
Priority to KR1020240104932A priority Critical patent/KR102763461B1/ko
Application granted granted Critical
Publication of KR102763461B1 publication Critical patent/KR102763461B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Virology (AREA)
  • Telephone Function (AREA)

Abstract

적어도 하나의 전자 장치의 동작 방법이 개시된다. 본 동작 방법은, 악성 스크립트를 LLM(Large Language Model)에 입력하여 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성하는 단계, 생성된 악성 기능셋을 LLM에 입력하여 생성된 악성 기능셋이 변환된 스크립트를 생성하는 단계, 생성된 스크립트와 악성 스크립트를 비교하는 단계, 생성된 스크립트와 악성 스크립트 간의 비교 결과를 기초로 생성된 악성 기능셋을 업데이트하는 단계, 업데이트된 악성 기능셋을 기초로 악성 스크립트에 대한 탐지 근거를 포함하는 설명을 생성하는 단계를 포함한다.

Description

생성형 AI를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법 { OPERATION METHOD OF ELECTRONIC APPARATUS FOR DESCRIBING FUNCTIONALITY OF MALICIOUS FUNCTION INHERENT IN SCRIPT BASED ON GENERATIVE AI AND FOR IMPROVING QUALITY OF DESCRIPTION ON ITS OWN }
본 개시는 악성 스크립트에 대한 설명을 제공하는 전자 장치 내지 시스템의 동작 방법에 관한 것으로, 보다 상세하게는, 설명을 통해 스크립트를 다시 복원하여 원본과 비교함으로써 설명 품질을 개선하는 전자 장치 내지 시스템의 동작 방법에 관한 것이다.
전통적으로 악성 스크립트에 내재된 악성 기능 요소의 파악은 heuristic rule을 기반으로 한정적 진단에 그치고 있으며, 이렇듯 패턴을 파악하는 룰에 한정되어 다소 경직된 진단이 수행되었기 때문에 악성 스크립트를 조금만 변형하면 진단에 실패하기도 하였고, 더군다나 알려지지 않은 신규 기능 요소에 대해서는 파악이 어려웠다. 더구나 악성 스크립트는 바이너리 형태의 악성코드와 달리 코드 자체가 공개되어 있고, 별도의 개발도구가 없이도 스크립트를 변형하거나 다양한 악성 기능을 조합해서 재사용하기도 쉬워 바이너리 형태의 악성코드에 비해 숫적으로도 훨씬 많고 다양하다. 따라서 정교하게 분석해서 진단 룰을 만들거나 시그니처를 생성해서 진단하고 대응하는 것은 효과가 낮기 때문에 자동화된 진단 방법이 다양하게 연구되어 왔다.
한편으로 사용자들은 악성으로 진단한 근거가 무엇이며, 어떤 부분이 악성인 것인지 설명도 요구한다. 자동화가 필요할 정도로 악성 스크립트의 수가 많고 다양한데 각각에 대해 설명을 제공할 뿐만 아니라 그 설명의 품질을 높이는 것은 또 다른 과제이다.
기존에 악성 스크립트의 기능을 생성형 AI로 도출하고자 하는 시도가 없지 않았지만 이렇게 생성된 설명이 가진 흠결들, 가령 어떤 기능요소가 누락되었는지, 생성형 AI의 환각 현상으로 말미암아 없는 기능 요소를 포함시킨 것이 아닌지 검증하는 것이 어려웠다.
출원번호 제10-2019-0027335호
본 개시는 흔히 이용되는 다양한 악성 스크립트에 포함된 악성 기능들을 설명하는 적어도 하나의 전자 장치의 동작 방법을 제공한다.
본 개시는 악성 여부 자체의 판별보다는 악성 스크립트 내에 있는 잠재 기능들을 생성형 AI 기반으로 도출하고, 이러한 도출의 유효성을 AI 모델 스스로 검토/비판하고 스스로 교정해 나가도록 하는 전자 장치의 동작 방법을 제공한다.
본 개시의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 개시의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 개시의 실시 예에 의해 보다 분명하게 이해될 것이다. 또한, 본 개시의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 개시의 일 실시 예에 따른 적어도 하나의 전자 장치의 동작 방법은, 악성 스크립트를 제1 생성형 AI에 입력하여 상기 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성하는 단계, 상기 생성된 악성 기능셋을 적어도 하나의 제2 생성형 AI에 입력하여 상기 생성된 악성 기능셋에 해당하는 스크립트를 생성하는 단계, 상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계, 상기 생성된 스크립트와 상기 악성 스크립트 간의 비교 결과를 기초로 상기 생성된 악성 기능셋을 업데이트하는 단계, 상기 업데이트된 악성 기능셋을 기초로 상기 악성 스크립트에 대한 탐지 근거를 포함하는 설명을 생성하는 단계를 포함한다.
상기 악성 기능셋을 생성하는 단계는, 악성 기능의 카테고리, 악성 기능에 매칭되는 코드 조각, 및 악성 기능이 존재한다고 판단되는 근거를 포함하는 텍스트를 생성할 수 있다.
상기 생성된 악성 기능셋이 변환된 스크립트를 생성하는 단계는, 상기 악성 스크립트에 포함된 함수, control flow 요소, 및 실행 가능한 파일 중 적어도 하나에 대한 정보를 포함하는 컨텍스트를 상기 제2 생성형 AI에 입력할 수 있다.
이 경우, 상기 생성된 악성 기능셋이 변환된 스크립트를 생성하는 단계는, 상기 생성된 악성 기능셋에 포함된 악성 기능의 카테고리와 관련된 적어도 하나의 연관 텍스트를 포함하는 컨텍스트를 상기 제2 생성형 AI에 입력할 수도 있다.
한편, 상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계는, 상기 생성된 스크립트와 상기 악성 스크립트의 비교 결과 적어도 하나의 기능 요소에 차이가 있는 경우, 상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이를 누락, 기능셋 환각, 및 복원 환각 중 적어도 하나로 유형으로 분류할 수 있다.
여기서, 상기 생성된 악성 기능셋을 업데이트하는 단계는, 상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 상기 누락인 경우, 상기 생성된 악성 기능셋에 누락된 기능 요소를 추가하고, 상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 상기 기능셋 환각인 경우, 상기 생성된 악성 기능셋에서 환각에 해당하는 기능 요소를 제거할 수 있다.
또는, 상기 전자 장치의 동작 방법은, 상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 상기 복원 환각인 경우, 상기 악성 스크립트 및 상기 생성된 악성 기능셋을 기초로 상기 제2 생성형 AI를 훈련시킬 수도 있다.
상기 설명을 생성하는 단계는, 상기 업데이트된 악성 기능셋에 포함된 각각의 악성 기능의 코드 위치를 포함하여 상기 업데이트된 악성 기능셋을 요약한 제1 설명 요소를 생성하고, 상기 업데이트된 악성 기능셋에 포함된 악성 기능의 공격 목적 및 발생 가능한 피해 중 적어도 하나를 포함하는 제2 설명 요소를 생성하고, 상기 업데이트된 악성 기능셋에 포함된 악성 기능과 관련된 시스템 내 취약 점 및 조치 중 적어도 하나를 포함하는 제3 설명 요소를 생성할 수 있다.
한편, 상기 적어도 하나의 전자 장치의 동작 방법은, 상기 업데이트된 악성 기능셋을 상기 제2 생성형 AI에 다시 입력하여 상기 업데이트된 악성 기능셋이 변환된 업데이트 스크립트를 생성하는 단계, 상기 악성 스크립트와 상기 업데이트 스크립트 간의 비교 결과에 따라 상기 업데이트된 악성 기능셋을 재차 업데이트하는 단계를 더 포함할 수도 있다.
본 개시의 일 실시 예에 따라 적어도 하나의 전자 장치의 동작 방법은, 악성 스크립트를 적어도 하나의 LLM(Large Language Model)에 입력하여 상기 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성하는 단계, 상기 생성된 악성 기능셋을 상기 LLM에 입력하여 상기 생성된 악성 기능셋이 변환된 스크립트를 생성하는 단계, 상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계, 상기 생성된 스크립트와 상기 악성 스크립트 간의 비교 결과를 기초로 상기 생성된 악성 기능셋을 업데이트하는 단계, 상기 업데이트된 악성 기능셋을 기초로 상기 악성 스크립트에 대한 탐지 근거를 포함하는 설명을 생성하는 단계를 포함한다.
본 개시에 따른 전자 장치의 동작 방법은, 악성 스크립트에 대한 설명의 품질을 개선하는 효과가 있다.
특히, 역방향의 코드 복원을 통해서 AI가 스스로 생성 품질을 개선할 수 있게 하며, 생성형 AI의 고질적인 환각 현상을 완화하여 Fact 기반으로 생성을 유도하게 한다.
이렇게 생성된 스크립트에 대한 탐지 근거 설명은 기존의 heuristic rule에 의한 룰 기반 설명이나 확률 모델에 의한 확률 설명 대비 보다 사용자 친화적이어서 사용자 수용성이 더욱 뛰어나다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 기능적 구성들을 설명하기 위한 블록도,
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 동작을 설명하기 위한 흐름도,
도 3은 본 개시의 일 실시 예에 따른 전자 장치가 악성 스크립트로부터 악성 기능셋을 획득한 다음 다시금 스크립트를 복원하는 동작을 설명하기 위한 도면,
도 4는 본 개시의 일 실시 예에 따른 전자 장치가 악성 스크립트와 복원된 스크립트를 비교하는 동작을 설명하기 위한 도면,
도 5는 본 개시의 일 실시 예에 따른 전자 장치가 악성 스크립트와 복원된 스크립트 간의 비교 결과에 따라 악성 기능셋을 개선하여 설명을 획득하는 동작을 설명하기 위한 도면,
도 6a는 적어도 하나의 생성형 AI를 직접 포함하는 전자 장치의 다양한 실시 예에 따른 구성을 설명하기 위한 블록도, 그리고
도 6b는 생성형 AI를 직접 포함하지 않는 전자 장치의 다양한 실시 예에 따른 구성을 설명하기 위한 블록도이다.
본 개시에 대하여 구체적으로 설명하기에 앞서, 본 명세서 및 도면의 기재 방법에 대하여 설명한다.
먼저, 본 명세서 및 청구범위에서 사용되는 용어는 본 개시의 다양한 실시 예들에서의 기능을 고려하여 일반적인 용어들을 선택하였다. 하지만, 이러한 용어들은 당해 기술 분야에 종사하는 기술자의 의도나 법률적 또는 기술적 해석 및 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 일부 용어는 출원인이 임의로 선정한 용어도 있다. 이러한 용어에 대해서는 본 명세서에서 정의된 의미로 해석될 수 있으며, 구체적인 용어 정의가 없으면 본 명세서의 전반적인 내용 및 당해 기술 분야의 통상적인 기술 상식을 토대로 해석될 수도 있다.
또한, 본 명세서에 첨부된 각 도면에 기재된 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다. 설명 및 이해의 편의를 위해서 서로 다른 실시 예들에서도 동일한 참조번호 또는 부호를 사용하여 설명한다. 즉, 복수의 도면에서 동일한 참조 번호를 가지는 구성요소가 모두 도시되어 있다고 하더라도, 복수의 도면들이 하나의 실시 예를 의미하는 것은 아니다.
또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 "제1", "제2" 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성요소들을 서로 구별하기 위하여 사용하는 것이며 이러한 서수 사용으로 인하여 용어의 의미가 한정 해석되어서는 안 된다. 일 예로, 이러한 서수와 결합된 구성요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한되어서는 안 된다. 필요에 따라서는, 각 서수들은 서로 교차되어 사용될 수도 있다.
본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지칭하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 실시 예에서 "모듈", "유닛", "부(part)" 등과 같은 용어는 적어도 하나의 기능이나 동작을 수행하는 구성요소를 지칭하기 위한 용어이며, 이러한 구성요소는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈", "유닛", "부(part)" 등은 각각이 개별적인 특정한 하드웨어로 구현될 필요가 있는 경우를 제외하고는, 적어도 하나의 모듈이나 칩으로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.
또한, 본 개시의 실시 예에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적인 연결뿐 아니라, 다른 매체를 통한 간접적인 연결의 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 포함한다는 의미는, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 기능적 구성들을 설명하기 위한 블록도이다.
도 1을 참조하면, 전자 장치(100)는 개인, 기업, 기관 등 다양한 대상/그룹과 관련된 네트워크 내 스크립트의 수집, 모니터링, 및 악성 탐지 중 적어도 하나를 수행하도록 구비된 적어도 하나의 컴퓨터로 구성된 장치 내지 시스템으로 구현될 수 있다.
예를 들어, 전자 장치(100)는 서버, 게이트웨이, 방화벽 장치, 라우팅 장치 등으로 구현되거나, pos 시스템, 결제 장치, 차량 단말, 스마트 가전, 데스크탑 PC, 노트북 PC, 스마트폰, 태블릿 PC, 콘솔 등으로 구현될 수 있으며, 이 밖에도 다양한 기기로 구현될 수 있다.
도 1을 참조하면, 전자 장치(100)는 기능셋 도출부(101), 스크립트 복원부(102), 스크립트 비교부(103), 기능셋 개선부(104), 설명부(105) 등을 포함한다.
기능셋 도출부(101)는 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성하기 위한 구성이다. 기능셋 도출부(101)는 악성 기능의 카테고리, 악성 기능에 매칭되는 코드 조각, 및 악성 기능이 존재한다고 판단되는 근거를 포함하는 텍스트를 생성할 수 있다.
이를 위해, 기능셋 도출부(101)는 악성 스크립트를 적어도 하나의 제1 생성형 AI에 입력하여 제1 생성형 AI의 출력에 따라 악성 기능셋을 획득할 수 있다.
제1 생성형 AI는 전자 장치(100) 상에 저장되어 있거나 또는 전자 장치(100)와 통신 가능한 적어도 하나의 외부 전자 장치 상에 저장된 것일 수 있다. 제1 생성형 AI는 트랜스포머 기반 모델, GAN(Generative Adversarial Networks) 모델, LLM(Large Language Model) 등일 수 있으나, 바람직하게는 LLM일 수 있다.
제1 생성형 AI가 LLM인 경우, 제1 생성형 AI는 다양한 악성 스크립트가 포함된 복수의 스크립트, 복수의 스크립트 내 개별 악성 기능의 카테고리 내지는 악성 기능의 판단 근거를 담은 공개된 문서를 토대로 훈련된 것일 수 있다.
이 경우, 기능셋 도출부(101)는 악성 기능의 카테고리, 악성 기능에 해당하는 코드 조각, 코드 조각이 분리된 섹션인지 혹은 코드 내 여러 위치에 파편화되었는지, 코드 조각과 악성 카테고리 간의 연관성에 대한 이론적 근거 중 적어도 하나를 문의하는 프롬프트를 생성하여 악성 스크립트를 포함하는 스크립트와 함께 제1 생성형 AI에 입력할 수 있다.
스크립트 복원부(102)는 생성된 악성 기능셋을 기초로 스크립트를 복원하기 위한 구성이다. 스크립트 복원부(102)는 생성된 악성 기능셋을 변환하여 스크립트를 생성할 수 있다.
이를 위해, 스크립트 복원부(102)는 생성된 악성 기능셋을 적어도 하나의 제2 생성형 AI에 입력하여 생성된 악성 기능셋이 변환된(복원된) 스크립트를 생성할 수 있다.
제2 생성형 AI는 전자 장치(100) 상에 저장되어 있거나 또는 전자 장치(100)와 통신 가능한 적어도 하나의 외부 전자 장치 상에 저장된 것일 수 있다. 제2 생성형 AI는 트랜스포머 기반 모델, GAN(Generative Adversarial Networks) 모델, LLM(Large Language Model) 등일 수 있으나, 바람직하게는 LLM일 수 있다.
제2 생성형 AI가 LLM인 경우, 제2 생성형 AI는 다양한 악성 스크립트가 포함된 복수의 스크립트, 복수의 스크립트 내 개별 악성 기능의 카테고리 내지는 악성 기능의 판단 근거를 담은 공개된 문서를 토대로 훈련된 것일 수 있다.
스크립트 복원부(102)는 단순히 악성 기능셋을 제2 생성형 AI에 입력함에 그치지 않고, 앞서 기능셋 도출부(101)에 입력된 원본에 해당하는 악성 스크립트에 포함된 함수, control flow 요소의 개수(ex. While, for loop, caller-callee 그래프 등의 개수), 및 실행 가능한 파일 중 적어도 하나에 대한 정보(ex. 파일명, 파일 경로, 레지스트리 정보 등)를 포함하는 컨텍스트를 제2 생성형 AI에 입력하여 제2 생성형 AI의 복원 과정을 지원할 수 있다. 또한, 스크립트 복원부(102)는 악성 기능셋에 포함된 악성 기능의 카테고리에 대한 적어도 하나의 연관 텍스트(ex. 분석 보고서)를 포함하는 컨텍스트를 제2 생성형 AI에 입력할 수도 있다.
스크립트 복원부(102)는 상술한 다양한 컨텍스트를 기초로 악성 기능셋으로부터 원본 스크립트의 복원을 요청하는 프롬프트를 생성하여 제2 생성형 AI에 입력할 수 있다.
스크립트 비교부(103)는 원본에 해당하는 악성 스크립트와 스크립트 복원부(102)에 의해 생성된 (복원된) 스크립트를 비교하기 위한 구성이다. 원본 스크립트와 복원된 스크립트 사이의 차이를 파악해서 기능셋 재생성(개선)에 관한 정보를 제공하기 위한 것이다.
상술한 두 가지 스크립트는 의미적으로는 유사하지만 외형적으로나 control flow 상으로 다소 차이가 있을 것이기 때문에 단순히 line-by-line difference 로는 차이를 기술하기 어려운 면이 있다. 관련하여, 스크립트 비교부(103)는 기능 요소의 차이를 중점적으로 분석할 수 있다.
이를 위해, 스크립트 비교부(103) 역시 적어도 하나의 제3 생성형 AI을 기초로 원본에 해당하는 악성 스크립트와 복원된 스크립트 간의 기능 요소의 차이를 식별할 수 있다.
제3 생성형 AI는 전자 장치(100) 상에 저장되어 있거나 또는 전자 장치(100)와 통신 가능한 적어도 하나의 외부 전자 장치 상에 저장된 것일 수 있다. 제3 생성형 AI는 트랜스포머 기반 모델, GAN(Generative Adversarial Networks) 모델, LLM(Large Language Model) 등일 수 있으나, 바람직하게는 LLM일 수 있다.
제3 생성형 AI가 LLM인 경우, 제3 생성형 AI는 다양한 악성 스크립트가 포함된 복수의 스크립트, 복수의 스크립트 내에 포함된 개별 악성 기능 요소, 복수의 스크립트가 변환된 악성 기능셋에 포함된 악성 기능 요소 등에 대한 정보를 토대로 훈련된 것일 수 있다.
생성된 스크립트와 (원본에 해당하는) 악성 스크립트의 비교 결과 적어도 하나의 기능 요소에 차이가 있는 경우, 스크립트 비교부(103)는 악성 스크립트에 대한 생성된 스크립트의 차이를 누락, 기능셋 환각, 및 복원 환각 중 적어도 하나로 유형으로 분류할 수 있다.
누락은, 원본에 해당하는 악성 스크립트에는 있는 기능이었지만 악성 기능셋 도출 과정에서는 누락된 경우를 의미한다. 가령 악성 코드가 자신의 존재를 숨기기 위해서, 악성 행위 후 자기 자신을 스스로 삭제하는 행위를 했는데 기능셋에서는 이 요소가 누락되었을 수 있다.
기능셋 환각은, 원본에 해당하는 악성 스크립트에는 없는 기능이었는데 악성 기능셋에 포함되는 경우를 의미한다. 생성형 AI가 일부 코드 조각의 악성 의도를 과대 해석해서 포함시킨 것일 수도 있다.
복원 환각은, 원본에는 없는 기능이어서 악성 기능셋에는 포함되어 있지 않았지만 스크립트 복원 과정에서 생성형 AI가 스스로 가상의 기능을 추가한 경우를 의미한다.
관련하여, 스크립트 비교부(103)는 악성 기능셋에 포함되는 기능 요소가 원본에 해당하는 악성 스크립트에 포함되어 있는지 여부, 악성 기능셋에 포함되는 기능 요소가 복원된 스크립트에 내포되어 있는지 여부 등을 문의하는 프롬프트를 생성하여 제3 생성형 AI에 입력할 수 있다.
기능셋 개선부(104)는 생성된 스크립트와 악성 스크립트 간의 비교 결과를 기초로 생성된 악성 기능셋을 업데이트하기 위한 구성이다. 업데이트된 악성 기능셋은 후술할 설명부(105)에 의해 설명으로 변환되기 위한 기초 데이터에 해당한다.
기능셋 개선부(104)는 기능셋 도출부(105)와 달리 스크립트 비교부(103)에서 생성한 feedback 정보를 바탕으로 최초의 악성 기능셋을 다시 개선하는 것을 목표로 한다.
예를 들어, 악성 스크립트에 대한 생성된 스크립트의 차이의 유형이 누락인 경우, 기능셋 개선부(104)는 생성된 악성 기능셋에 누락된 기능 요소를 추가할 수 있다.
예를 들어, 악성 스크립트에 대한 생성된 스크립트의 차이의 유형이 기능셋 환각인 경우, 기능셋 개선부(104)는 생성된 악성 기능셋에서 환각에 해당하는 기능 요소를 제거할 수 있다.
기능셋 개선부(104) 역시, 적어도 하나의 제4 생성형 AI를 통해 기능셋을 업데이트할 수 있다.
제4 생성형 AI는 전자 장치(100) 상에 저장되어 있거나 또는 전자 장치(100)와 통신 가능한 적어도 하나의 외부 전자 장치 상에 저장된 것일 수 있다. 제2 생성형 AI는 트랜스포머 기반 모델, GAN(Generative Adversarial Networks) 모델, LLM(Large Language Model) 등일 수 있으나, 바람직하게는 LLM일 수 있다.
제4 생성형 AI가 LLM인 경우, 제4 생성형 AI는 다양한 악성 기능셋에 포함된 개별 기능 요소의 카테고리, 코드 조각 등에 대한 정보를 기초로 훈련된 것일 수 있다.
한편, 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 복원 환각인 경우, 전자 장치(100)는 악성 스크립트 및 생성된 악성 기능셋을 기초로 상술한 제2 생성형 AI를 추가로 훈련시킬 수도 있다. 이 경우, 악성 기능셋 자체는 추가로 개선되지 않을 수 있다.
설명부(105)는 기능셋 개선부(104)에 의해 개선된 악성 기능셋을 기초로 악성 스크립트에 대한 탐지 근거를 포함하는 설명을 생성하기 위한 구성이다. 설명부(105) 역시, 적어도 하나의 제5 생성형 AI를 기초로 설명을 생성할 수 있다.
제5 생성형 AI는 전자 장치(100) 상에 저장되어 있거나 또는 전자 장치(100)와 통신 가능한 적어도 하나의 외부 전자 장치 상에 저장된 것일 수 있다. 제2 생성형 AI는 트랜스포머 기반 모델, GAN(Generative Adversarial Networks) 모델, LLM(Large Language Model) 등일 수 있으나, 바람직하게는 LLM일 수 있다.
제5 생성형 AI가 LLM인 경우, 제5 생성형 AI는 다양한 악성 기능셋과 그에 매칭되는 설명들을 기초로 훈련된 것일 수 있다. 제5 생성형 AI의 훈련 과정에서 활용되는 훈련 데이터에 해당하는 설명은, 개별 악성 기능의 코드 위치, 공격 목적, 발생한 피해, 관련된 취약점, 취해진 조치 등을 포함할 수 있다.
구체적으로, 설명부(105)는 업데이트된 악성 기능셋에 포함된 각각의 악성 기능의 코드 위치를 포함하여 상기 업데이트된 악성 기능셋을 요약한 제1 설명 요소를 생성할 수 있다.
또한, 설명부(105)는 업데이트된 악성 기능셋에 포함된 악성 기능의 공격 목적 및 발생 가능한 피해 중 적어도 하나를 포함하는 제2 설명 요소를 생성할 수 있다.
또한, 설명부(105)는 업데이트된 악성 기능셋에 포함된 악성 기능과 관련된 시스템 내 취약 점 및 조치 중 적어도 하나를 포함하는 제3 설명 요소를 생성할 수 있다.
상술한 개별 설명 요소를 도출하기 위한 과정에서, 설명부(105)는 악성 기능셋에 포함된 악성 기능의 카테고리와 연관된 정보(ex. 관련 악성 프로그램 정보, 악성 공격자 정보, 이들이 사용했던 취약점 정보 등)을 포함하는 컨텍스트를 제5 생성형 AI로 제공할 수도 있다.
한편, 제1 내지 제5 생성형 AI는 모두 동일한 모델에 해당할 수도 있고, 각기 별도의 모델에 해당할 수 있다.
모두 동일한 생성형 AI에 해당하는 경우, 각 구성(101, 102, 103, 104, 105)은 각 구성의 목적에 맞는 프롬프트를 생성하여 생성형 AI에 입력함으로써 상술한 각 동작을 수행할 수 있다.
각기 다른 생성형 AI에 해당하는 경우, 각각의 생성형 AI는 각 구성(101, 102, 103, 104, 105)에 매칭되어 최적화된 모델일 수 있다. 예를 들어 기능셋 도출부(101)에 매칭되는 제1 생성형 AI는 악성 스크립트로부터 악성 기능셋을 도출하는 과정에 최적화되어 훈련된 모델이고, 스크립트 복원부(102)에 매칭되는 제2 생성형 AI는 악성 기능셋으로부터 역으로 악성 스크립트를 도출하는 복원 과정에 최적화되어 훈련된 모델일 수 있다.
이하 도 2 내지 도 5를 통해, 각각의 생성형 AI가 LLM으로 구현된 경우를 가정하여 본 개시에 따른 전자 장치의 동작 예시를 설명한다.
도 2를 참조하면, 기능셋 도출부(101)는 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성할 수 있다(S210).
이 때, 스크립트 복원부(102)는 생성된 악성 기능셋을 다시금 스크립트로 변환하는 복원 과정을 수행할 수 있다(S220).
예를 들어, 도 3을 참조하면, 기능셋 도출부(101)는 원본에 해당하는 악성 스크립트를 LLM에 입력하여 악성 기능셋을 획득할 수 있으며, 스크립트 복원부(102)는 악성 기능셋을 LLM에 입력하여 복원된 새로운 악성 스크립트를 생성할 수 있다.
또한, 도 2를 참조하면, 스크립트 비교부(103)는 생성된 스크립트와 악성 스크립트를 비교할 수 있다(S230).
예를 들어, 도 4를 참조하면, 스크립트 비교부(103)는 원본에 해당하는 악성 스크립트 및 복원된 스크립트를 각각 LLM에 입력하여 비교 결과를 획득할 수 있다. 비교 결과는, 상술하였듯 기능 요소의 차이에 따라 식별될 수 있으며, 누락, 기능셋 환각, 복원 환각 등의 유형으로 식별될 수 있다.
그리고, 기능셋 개선부(104)는 상술한 비교 결과에 따라 S210에서 생성된 악성 기능셋을 업데이트할 수 있다(S240).
이 경우, 설명부(105)는 업데이트된 악성 기능셋을 기초로 악성 스크립트(원본)에 대한 탐지 근거를 포함하는 설명을 생성할 수 있다(S250).
예를 들어, 도 5를 참조하면, 기능셋 개선부(104)는 비교 결과 및 악성 기능셋을 각각 LLM에 입력하여 누락된 기능 요소나 환각에 따라 생성된 기능 요소가 없도록 악성 기능셋을 업데이트할 수 있다.
이 때, 설명부(105)는 업데이트된 악성 기능셋을 LLM에 입력하여 탐지 근거에 대한 설명을 생성할 수 있다.
이렇게 도출된 설명은 종국에 악성 스크립트가 확인되는 시스템의 관리자 내지 사용자를 위해 제공될 수 있는 것으로, 상술한 악성 기능셋의 생성, 스크립트의 복원, 및 스크립트 간의 비교 등의 과정에서 그 품질이 검증된 것에 해당한다.
한편, 본 개시의 일 실시 예에 따른 전자 장치(100)는 상술한 악성 기능셋의 업데이트 과정을 한 번 이상 더 반복하는 추가 업데이트를 수행할 수도 있다.
구체적으로, 스크립트 복원부(102)는 앞서 업데이트된 악성 기능셋을 다시금 생성형 AI(ex. 제2 생성형 AI)에 입력하여 업데이트된 악성 기능셋이 변환된 업데이트 스크립트를 생성할 수 있다.
여기서, 스크립트 비교부(103)에 의해 원본에 해당하는 악성 스크립트와 업데이트 스크립트가 비교될 수 있으며, 기능셋 개선부(104)는 비교 결과에 따라 앞서 업데이트된 악성 기능셋을 재차 업데이트할 수 있다.
이러한 추가 업데이트 과정의 반복은 비교 결과가 기설정된 조건을 만족할 때까지 진행될 수 있다.
예를 들어, 스크립트 비교부(103)에 의해 도출된 비교 결과에 따라 원본에 해당하는 악성 스크립트에 대한 업데이트 스크립트의 기능 요소의 차이가 발견되지 않는 경우, 추가 업데이트의 반복이 종료되고 악성 기능셋이 확정될 수 있다. 확정된 악성 기능셋은 설명으로 변환된다.
또는, 재차 업데이트가 진행되기 전의 비교 결과보다 재차 업데이트가 진행된 이후의 비교 결과에 있어서 기능 요소의 차이가 더 큰 경우, 추가 업데이트의 반복이 종료되고 악성 기능셋이 확정될 수 있다. 이 경우, 전자 장치(100)는 재차 업데이트가 진행되기 직전의 악성 기능셋으로 복원하여 이를 기초로 설명을 생성할 수 있다.
도 6a는 적어도 하나의 생성형 AI를 직접 포함하는 전자 장치의 다양한 실시 예에 따른 구성을 설명하기 위한 블록도이다.
도 6a를 참조하면, 전자 장치(100)는 적어도 하나의 메모리(110) 및 적어도 하나의 프로세서(120)를 포함할 수 있다.
메모리(110)는 전자 장치(100)의 구성요소들의 전반적인 동작을 제어하기 위한 운영체제(OS: Operating System) 및 전자 장치(100)의 구성요소와 관련된 적어도 하나의 인스트럭션 또는 데이터를 저장하기 위한 구성이다.
메모리(110)는 ROM, 플래시 메모리 등의 비휘발성 메모리를 포함할 수 있으며, DRAM 등으로 구성된 휘발성 메모리를 포함할 수 있다. 또한, 메모리(120)는 하드 디스크, SSD(Solid state drive) 등의 보조 저장 장치를 포함할 수도 있다.
도 6a를 참조하면, 메모리(110) 상에는 적어도 하나의 생성형 AI(ex. 상술한 제1 내지 제 5 생성형 AI 중 적어도 하나)가 포함될 수 있다.
프로세서(120)는 전자 장치(100)의 전반적인 구성 및 동작을 제어하기 위한 구성이다.
프로세서(120)는 메모리(110)와 연결되어 메모리(110)에 저장된 적어도 하나의 인스트럭션을 실행함으로써 전자 장치(100)를 제어할 수 있다.
이를 위해, 프로세서(120)는 CPU(Central Processing Unit), AP(Application Processor) 등과 같은 범용 프로세서, GPU(Graphic Processing Unit), VPU(Vision Processing Unit) 등과 같은 그래픽 전용 프로세서 또는 NPU(Neural Processing Unit)와 같은 인공지능 전용 프로세서 등으로 구현될 수 있다. 프로세서(130)는 SRAM 등의 휘발성 메모리를 포함할 수 있다.
프로세서(120)는 기능셋 도출부(101), 스크립트 복원부(102), 스크립트 비교부(103), 기능셋 개선부(104), 설명부(105) 등 기능 단위의 모듈들을 제어할 수 있다. 각 모듈들은 소프트웨어 및/또는 하드웨어로 구현된 구성들에 해당한다.
메모리(110) 및 프로세서(120) 외에, 전자 장치(100)는 통신 인터페이스(130), 디스플레이(140) 등을 더 포함할 수도 있다.
통신 인터페이스(130)는 하나 이상의 네트워크를 통해 외부 전자 장치와 연결될 수 있으며, 이때 다양한 유무선 통신 방식을 통해 데이터를 주고받을 수 있다.
네트워크는 영역 또는 규모에 따라 개인 통신망(PAN; Personal Area Network), 근거리 통신망(LAN; Local Area Network), 광역 통신망(WAN; Wide Area Network) 등일 수 있으며, 네트워크의 개방성에 따라 인트라넷(Intranet), 엑스트라넷(Extranet), 또는 인터넷(Internet) 등일 수 있다.
무선 통신은 LTE(long-term evolution), LTE-A(LTE Advance), 5G(5th Generation) 이동통신, CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), GSM(Global System for Mobile Communications), DMA(Time Division Multiple Access), WiFi(Wi-Fi), WiFi Direct, Bluetooth, NFC(near field communication), Zigbee 등의 통신 방식 중 적어도 하나를 포함할 수 있다.
유선 통신은 이더넷(Ethernet), 광 네트워크(optical network), USB(Universal Serial Bus), 선더볼트(ThunderBolt) 등의 통신 방식 중 적어도 하나를 포함할 수 있다.
한편, 통신 방식은 상술한 예에 한정되지 아니하고, 기술의 발전에 따라 새롭게 등장하는 통신 방식을 포함할 수 있다.
예를 들어, 전자 장치(100)는 통신 인터페이스(130)를 통해 시스템/네트워크 내 로그 내지 스크립트를 추적하여 악성 스크립트를 식별할 수 있으며, 해당 과정에서 악성 스크립트에 대한 기능셋을 도출하고 설명을 제공할 수 있다.
이 때, 전자 장치(100)는 시스템/네트워크의 관리자 또는 사용자의 단말로 악성 스크립트에 대한 설명을 제공할 수 있다.
디스플레이(140)는 다양한 정보를 시각적으로 출력하기 위한 구성으로, 적어도 하나의 디스플레이 패널, 구동 회로 등을 포함할 수 있다.
전자 장치(100)는 디스플레이(140)를 통해 악성 스크립트에 대한 설명을 시각적으로 출력할 수도 있다.
한편, 도 6b는 생성형 AI를 직접 포함하지 않는 전자 장치의 다양한 실시 예에 따른 구성을 설명하기 위한 블록도이다.
도 6b를 참조하면, 전자 장치(100)는 메모리(110), 프로세서(120), 및 통신 인터페이스(130)를 포함할 수 있다.
도 6b를 참조하면, 전자 장치(100)는 통신 인터페이스(130)를 통해 외부 전자 장치(200)와 통신을 수행하여 외부 전자 장치(200)에 포함된 생성형 AI(201)를 활용할 수 있다. 생성형 AI(201)는 상술한 제1 내지 제5 생성형 AI 중 적어도 하나를 포함할 수 있으며, 외부 전자 장치(200)는 생성형 AI(201)를 통해 언어 솔루션을 제공하는 서비스 제공자일 수도 있다.
또한, 전자 장치(100)는 통신 인터페이스(130)를 통해 시스템/네트워크 내 로그 내지 스크립트를 추적하여 악성 스크립트를 식별할 수 있으며, 해당 과정에서 악성 스크립트에 대한 기능셋을 도출하고 설명을 제공할 수 있다. 이 때, 전자 장치(100)는 시스템/네트워크의 관리자 또는 사용자의 단말로 악성 스크립트에 대한 설명을 제공할 수 있다.
또한, 전자 장치(100)는 디스플레이(140)를 통해 악성 스크립트에 대한 설명을 출력할 수도 있다.
한편, 비록 도 6a 내지 도 6b를 통해 도시되지는 않았으나, 기능셋 도출부(101), 스크립트 복원부(102), 스크립트 비교부(103), 기능셋 개선부(104), 설명부(105) 등은 서로 연결된 두 개 이상의 전자 장치 상에 나누어져 포함될 수도 있다. 예를 들어, 제1 전자 장치는 기능셋 도출부(101), 스크립트 복원부(102), 스크립트 비교부(103)를 포함하고, 제2 전자 장치는 기능셋 개선부(104) 및 설명부(105)를 포함하는 것도 가능하다.
한편, 이상에서 설명된 다양한 실시 예들은 서로 저촉되거나 모순되지 않는 한 두 개 이상의 실시 예가 서로 결합되어 구현될 수 있다.
한편, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다.
하드웨어적인 구현에 의하면, 본 개시에서 설명되는 실시 예들은 ASICs(Application Specific Integrated Circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다.
일부의 경우에 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상술한 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.
한편, 상술한 본 개시의 다양한 실시 예들에 따른 전자 장치(100) 등에서의 처리동작을 수행하기 위한 컴퓨터 명령어(computer instructions) 또는 컴퓨터 프로그램은 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어 또는 컴퓨터 프로그램은 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 전자 장치(100) 등에서의 처리 동작을 상술한 특정 기기가 수행하도록 한다.
비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
100: 전자 장치
101: 가능셋 도출부
102: 스크립트 복원부
103: 스크립트 비교부
104: 기능셋 개선부
105: 설명부
110: 메모리
120: 프로세서
130: 통신 인터페이스
140: 디스플레이

Claims (11)

  1. 적어도 하나의 전자 장치의 동작 방법에 있어서,
    악성 스크립트를 제1 생성형 AI에 입력하여 상기 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성하는 단계;
    상기 생성된 악성 기능셋을 적어도 하나의 제2 생성형 AI에 입력하여 상기 생성된 악성 기능셋에 해당하는 스크립트를 생성하는 단계;
    상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계;
    상기 생성된 스크립트와 상기 악성 스크립트 간의 비교 결과를 기초로 상기 생성된 악성 기능셋을 업데이트하는 단계; 및
    상기 업데이트된 악성 기능셋을 기초로 상기 악성 스크립트에 대한 탐지 근거를 포함하는 설명을 생성하는 단계;를 포함하고,
    상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계는,
    상기 생성된 스크립트와 상기 악성 스크립트의 비교 결과 적어도 하나의 기능 요소에 차이가 있는 경우, 상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이를 누락, 기능셋 환각, 및 복원 환각 중 적어도 하나로 유형으로 분류하는, 적어도 하나의 전자 장치의 동작 방법.
  2. 제1항에 있어서,
    상기 악성 기능셋을 생성하는 단계는,
    악성 기능의 카테고리, 악성 기능에 매칭되는 코드 조각, 및 악성 기능이 존재한다고 판단되는 근거를 포함하는 텍스트를 생성하는, 적어도 하나의 전자 장치의 동작 방법.
  3. 제1항에 있어서,
    상기 생성된 악성 기능셋에 해당하는 스크립트를 생성하는 단계는,
    상기 악성 스크립트에 포함된 함수, control flow 요소, 및 실행 가능한 파일 중 적어도 하나에 대한 정보를 포함하는 컨텍스트를 상기 제2 생성형 AI에 입력하는, 적어도 하나의 전자 장치의 동작 방법.
  4. 제2항에 있어서,
    상기 생성된 악성 기능셋에 해당하는 스크립트를 생성하는 단계는,
    상기 생성된 악성 기능셋에 포함된 악성 기능의 카테고리와 관련된 적어도 하나의 연관 텍스트를 포함하는 컨텍스트를 상기 제2 생성형 AI에 입력하는, 적어도 하나의 전자 장치의 동작 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 생성된 악성 기능셋을 업데이트하는 단계는,
    상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 상기 누락인 경우, 상기 생성된 악성 기능셋에 누락된 기능 요소를 추가하고,
    상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 상기 기능셋 환각인 경우, 상기 생성된 악성 기능셋에서 환각에 해당하는 기능 요소를 제거하는, 적어도 하나의 전자 장치의 동작 방법.
  7. 제1항에 있어서,
    상기 전자 장치의 동작 방법은,
    상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이의 유형이 상기 복원 환각인 경우, 상기 악성 스크립트 및 상기 생성된 악성 기능셋을 기초로 상기 제2 생성형 AI을 훈련시키는 단계;를 포함하는, 적어도 하나의 전자 장치의 동작 방법.
  8. 제1항에 있어서,
    상기 설명을 생성하는 단계는,
    상기 업데이트된 악성 기능셋에 포함된 각각의 악성 기능의 코드 위치를 포함하여 상기 업데이트된 악성 기능셋을 요약한 제1 설명 요소를 생성하고,
    상기 업데이트된 악성 기능셋에 포함된 악성 기능의 공격 목적 및 발생 가능한 피해 중 적어도 하나를 포함하는 제2 설명 요소를 생성하고,
    상기 업데이트된 악성 기능셋에 포함된 악성 기능과 관련된 시스템 내 취약 점 및 조치 중 적어도 하나를 포함하는 제3 설명 요소를 생성하는, 적어도 하나의 전자 장치의 동작 방법.
  9. 제1항에 있어서,
    상기 적어도 하나의 전자 장치의 동작 방법은,
    상기 업데이트된 악성 기능셋을 상기 제2 생성형 AI에 다시 입력하여 상기 업데이트된 악성 기능셋이 변환된 업데이트 스크립트를 생성하는 단계; 및
    상기 악성 스크립트와 상기 업데이트 스크립트 간의 비교 결과에 따라 상기 업데이트된 악성 기능셋을 재차 업데이트하는 단계;를 포함하는, 적어도 하나의 전자 장치의 동작 방법.
  10. 적어도 하나의 전자 장치의 동작 방법에 있어서,
    악성 스크립트를 적어도 하나의 LLM(Large Language Model)에 입력하여 상기 악성 스크립트에 포함된 적어도 하나의 악성 기능이 텍스트로 표현된 악성 기능셋을 생성하는 단계;
    상기 생성된 악성 기능셋을 상기 LLM에 입력하여 상기 생성된 악성 기능셋이 변환된 스크립트를 생성하는 단계;
    상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계;
    상기 생성된 스크립트와 상기 악성 스크립트 간의 비교 결과를 기초로 상기 생성된 악성 기능셋을 업데이트하는 단계; 및
    상기 업데이트된 악성 기능셋을 기초로 상기 악성 스크립트에 대한 탐지 근거를 포함하는 설명을 생성하는 단계;를 포함하고,
    상기 생성된 스크립트와 상기 악성 스크립트를 비교하는 단계는,
    상기 생성된 스크립트와 상기 악성 스크립트의 비교 결과 적어도 하나의 기능 요소에 차이가 있는 경우, 상기 악성 스크립트에 대한 상기 생성된 스크립트의 차이를 누락, 기능셋 환각, 및 복원 환각 중 적어도 하나로 유형으로 분류하는, 적어도 하나의 전자 장치의 동작 방법.
  11. 적어도 하나의 인스트럭션이 저장된 적어도 하나의 메모리; 및
    상기 인스트럭션을 실행하여 제1항의 동작 방법을 수행하는 적어도 하나의 프로세서;를 포함하는, 적어도 하나의 전자 장치.
KR1020240104932A 2024-08-06 2024-08-06 생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법 Active KR102763461B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240104932A KR102763461B1 (ko) 2024-08-06 2024-08-06 생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020240104932A KR102763461B1 (ko) 2024-08-06 2024-08-06 생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법

Publications (1)

Publication Number Publication Date
KR102763461B1 true KR102763461B1 (ko) 2025-02-04

Family

ID=94604516

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020240104932A Active KR102763461B1 (ko) 2024-08-06 2024-08-06 생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법

Country Status (1)

Country Link
KR (1) KR102763461B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190027335A (ko) 2017-09-06 2019-03-14 엘지전자 주식회사 공기조화기의 천장형 실내기

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190027335A (ko) 2017-09-06 2019-03-14 엘지전자 주식회사 공기조화기의 천장형 실내기

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Ashley Q. Williamson and Michael Beauparlant, "Malware Reverse Engineering with Large Language Model for Superior Code Comprehensibility and IoC Recommendations"(2024.05.)* *
Chongzhou Fang et al., "Large Language Models for Code Analysis: Do LLMs Really Do Their Job?"(2024.03.)* *
Peiwei Hu, Ruigang Liang and Kai Chen, "DeGPT: Optimizing Decompiler Output with LLM"(2024.03.)* *

Similar Documents

Publication Publication Date Title
EP3651043B1 (en) Url attack detection method and apparatus, and electronic device
EP3822840A3 (en) Method, apparatus, computer storage medium and program for authenticating a chip design
US20210034753A1 (en) Method and system for neural network based data analytics in software security vulnerability testing
US8756432B1 (en) Systems and methods for detecting malicious digitally-signed applications
CN109643272B (zh) 用于自动http测试的测试系统及方法
US8806625B1 (en) Systems and methods for performing security scans
US8635171B1 (en) Systems and methods for reducing false positives produced by heuristics
US9064134B1 (en) Method and apparatus for mitigating software vulnerabilities
US8627469B1 (en) Systems and methods for using acquisitional contexts to prevent false-positive malware classifications
CN110445769B (zh) 业务系统的访问方法及装置
CN116438533A (zh) 用于软件调用栈的安全策略
JP6687761B2 (ja) 結合装置、結合方法および結合プログラム
US9654982B2 (en) Protecting mobile devices from malware
US9519780B1 (en) Systems and methods for identifying malware
US8321940B1 (en) Systems and methods for detecting data-stealing malware
KR102427782B1 (ko) 인접 행렬 기반의 악성 코드 탐지 및 분류 장치와 악성 코드 탐지 및 분류 방법
US11323461B2 (en) Systems and methods for intercepting malicious messages based on application priority
WO2016068974A1 (en) System and method for vulnerability remediation verification
US20210173928A1 (en) System and method for improved protection against malicious code elements
US20150271171A1 (en) Systems and methods for discovering website certificate information
US20190325134A1 (en) Neural network detection of malicious activity
JP7351399B2 (ja) ログ生成装置、ログ生成方法、及びプログラム
US8751568B1 (en) Systems and methods for data loss prevention
CN103646213A (zh) 一种恶意软件的分类方法和装置
KR102763461B1 (ko) 생성형 ai를 기초로 스크립트에 내재된 악성 기능을 설명하고 자체적으로 설명의 품질을 개선하는 전자 장치의 동작 방법

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20240806

PA0201 Request for examination

Patent event code: PA02011R01I

Patent event date: 20240806

Comment text: Patent Application

PA0302 Request for accelerated examination

Patent event date: 20240821

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20241025

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20250121

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20250124

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20250124

End annual number: 3

Start annual number: 1

PG1601 Publication of registration