---
# System prepended metadata

title: NovaCore 페어프로그래밍

---

# 2023-11-21

## 대체 코드 개발 필요 모듈 및 소스 (엔진셀)

* 빌드를 위해 임시로 옮긴 프로젝트)
    * [AYConfig.lib](dooray://2164402268106420706/pages/3556460279208184444)
        * 추후 Alps가 도입될 경우를 위해 알약에 두고 오는 것으로 결정
* 빌드를 위해 임시로 옮긴 소스 파일)
    * Common
    * CommonEx
    * Config
    * ConnMod
    * CoreEnginePublicSrc
    * EdrControl
    * Exclude
    * Lib
    * Log
    * SecurityCheck
    * UpdateSrv
    * UserLevelFunction

## 통합스캐너 누겟 패키징 (허신)

* 패키지명: ESTsecurity.NovaCore
* 현재 버전: ESTsecurity.NovaCore.0.1.0-beta1994
* 포함된 모듈
    * [x] Connector.lib
    * [x] Control.dll
    * [x] Coen.dll
    * [x] quarantine.dll
    * [x] Untreated.dll
    * [x] CleanLogManager.dll
    * [x] ScanRegistryHelper.dll
    * [x] Collect.dll
    * [x] Archive.dll
* 수정 사항
    * Archive.dll 추가
    * AlyacConfig.h 헤더 포함
---
### 논의 중인 내용
* 모듈들의 include, connetor 를 어떤 방식으로 패키징할지 논의 중

## Config.dll 종속성 제거 (허신)
* Control.dll에서 Config.dll을 직접 사용하고 있는 것을 제거 작업 중
    * NovaCore 자체 Config struct를 1차 구성하고 패키지에 노출
    * ControlConnector를 통한 Initialize, UpdateConfig 에서 Config struct를 통한 config 설정 완료
        * WatchMessenger.dll 에서 사용됨
    * ScannerConnector를 통한 Initialize, UpdateConfig 작업 필요
        * Scan.dll 에서 사용됨

## 업데이트 (김기덕)

* 바토스캐너 모듈 업데이트 기능을 제공해야 함
    1. ```patch.exe 구현 필요(알약 및 기존 바토스캐너 코드 참고)```
    2. ```patch.exe가 업데이트되는 경우를 고려해야 함```
* 알약 연동은 리펙터링되는 업데이트 모듈에 맞춰 진행(후순위)
    * 리펙터링 완료 후 분석 작업 필요(예정 : 11.20)
* 모듈 업데이트 테스트 환경 세팅
    * CDN 업로드 : DB 검증 배포랑 유사하게
    * CDN 다운로드 후 업데이트 : update.dat 작성 필요
* 알약 공개용 3.0 beta DB 제작 및 배포 작업과 DB 검증 서버에 있는 스캐너 교체 작업이 예정되어 있어서 많은 시간을 투입하는 것은 어려움이 있음

## 바토 스캐너 (채영훈)

* 압축 파일 검사
    * 알약과 동일하게 내부 파일 경로 처리
    * 압축 파일 검사 결과
        1. 압축 파일이 악성코드이거나 검사를 실패한 경우
        2. 압축 파일을 성공적으로 해제 후 내부 파일들에 대한 악성코드 및 에러 여부
    * 재개 가능한 에러를 구분하여 처리
* 모듈 업데이트
    * 패치 파일 리스트
        * 기덕님과 협의
* 소켓 명령 추가
    * PING, VERSION, SHUTDOWN, SCAN, MULTISCAN, UPDATE(NEW)
* 가이드 문서 작성