일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 드림핵
- 취약점진단
- 보안기사실기
- Python
- 기아
- gns3
- 모의해킹
- snort2.9
- Bigdata
- 리눅스보안
- 정보보안
- DreamHack
- dreamhack.io
- GitLab
- Synology
- AI
- Snort
- 리눅스
- 정보보안기사
- NEXUS
- 정보보안산업기사
- VMware
- docker
- NQ5
- 스노트
- M1
- 데이터모델링
- 보안컨설팅
- 유닉스
- 웹모의해킹
- Today
- Total
목록현업 (10)
Security_Analysis

직접 진단한 결과를 DB에 저장까지 했으니, 이 결과들을 가지고 취약점 예측 모델을 만들어야 한다. 진단 Tool 제작_4 (데이터 저장) 내가 생각한 학습 모델은 다음과 같다. 1). DB에 저장된 현황과 결과를 학습하여 각 "양호", "취약", "N/A", "인터뷰" 등의 결과를 내야 하고 2). 진단 시 오탐률은 최대한 적어야 한다. 맨 처음글에서도 썼지만, 취약점 자동화 솔루션들은 특정 설정값 존재여부에 대해 확인하고 존재하는 경우 : 양호 / 존재하지 않는 경우 : 취약 => 즉 설정값 과 기준 값의 1 : 1 Mapping 을 통한 진단 이라는 것그럼 기준에는 적합하지 않지만 양호의 결과가 존재한다면..? 예를 들어 이런 항목이다. =================..

이제 데이터를 저장해야 한다. 진단 Tool 제작_3 (데이터 분할 및 데이터 프레임화 코드 변경) DB에 Label 결과가 없는 상태로 1차 저장을 하고 Label 값을 사람이 넣고 난 후에 해당파일을 다시 넣으면 Label을 진행하여 각 현황에 맞는 결과를 DB에 저장한다. DB에 저장을 하기 위해서 코드를 작성했다.if os_db_path: os_conn = sqlite3.connect(os_db_path) os_cursor = os_conn.cursor() os_cursor.execute('SELECT COUNT(*) FROM processed_files WHERE filename = ?', (file_name,)) i..

앞서 글에서 데이터 분할은 완료하였고, 데이터 프레임도 했었는데 한가지 의문이 생겼다. 진단 Tool 제작_1 (데이터 분할) (tistory.com) 데이터 분할을 한다는 것은 "Script 결과" 를 특정 항목별로 분리해서 U-01.txt 와 같이 분리하는 것이였다. 그렇다면, 구조는 아래와 같다 " 원본 스크립트 파일 " 을 분할하여 "항목별 텍스트 파일" 결과를 가지고 "데이터 프레임화" 하는 것이다. 원본 결과를 가지고도 데이터프레임화를 할 수 있는데 굳이 항목별로 텍스트 파일을 만들어야 하는 의문이 생겼다. 특정 문구를 가지고 Parsing 하면서 나머지 데이터를 지우면..항목별 텍스트 파일 결과가 왜 필요하지..??그리하여, 나는 "원본 스크립트 결과 파일" 을 통해 데이터 프레임화 하기로..
앞서 글에서 데이터 분할은 완료하였으니 이제 데이터 프레임화를 진행해볼까 한다. 진단 Tool 제작_1 (데이터 분할) (tistory.com) 데이터 프레임화 에 대해서 간략하게만 정의하면 "표" 를 만드는 것이라고 생각했다. 자세한 설명은 구글링( 3) 데이터프레임이란? - 인투 더 파이썬(INTO THE PYTHON), 기초부터 AI까지 (wikidocs.net)에서 도와줄 것이다. 즉, 항목번호(U-01, U-02 ~ U-72) 별로, 각 텍스트 파일에 있는 값을 가져왔다 file_paths = glob.glob('./data/**/U-*.txt', recursive=True)for file_path in file_paths: file_name = os.path.basename(file..