ml 4

ML(Isolation Forest)로 해킹 시도 의심 IP 찾기

LGCNS 재직시절 그룹사의 보안관제를 수행하였습니다.그때 SIEM에 하루에만 수백만개의 로그가 있는데 의심 IP만 어떻게 판별할까? 였습니다. 좋은방법은 아래와 같이 있으나, 모두 수작업이 많이 들어가고 수시로 업데이트해야합니다.1. signature를 고도화해서 WAF나 IPS에서 탐지해서 찾는다.2. malicious ip를 db에 업데이트해서 source ip기준 판별 그래서 어떻게 ML이나 AI를 이용해서 해결해 볼 수 있을까 고민해보았습니다. 앞에 블로그 글에서 수행했던 방법은1. 이벤트별 가중치를 부과하여 판별하기2. ML이나 AI로 training후 평가 방식이었습니다. 다만 이번엔 랜덤포레스트와 유사한 방식의 무작위 트리 분류구조 분석인 Isolation Forest 모델로 비정상 IP를..

ML 2024.11.07

ML(Machine Learning)으로 서버 장애 사전감지하기(feat. 랜덤포레스트,KFold 교차검증)

안녕하세요. 서버admin시절 "ML로 서버 장애를 사전감지할 수 있을까?"에 대해 고민이 있었습니다. 이전 https://funscientist.tistory.com/46 글에서는 가중치를 미리 임의로 입력하여 임계값을 찾는 방식이었다면 이번엔 ML을 이용하여 최대한 여러 가정을 없애고 분석하는 방식으로 수정해 보았습니다. 아래 frame을 토대로 다양한 data를 load하여 활용해 보세요! - 장애는 비선형적으로 일어나며, 장애 발생 한달전 이벤트를 ML(KFold교차검증)을 통해 사전에 감지할 수 있다. - KFold 사용이유 : 다른 방식의 교차검증시 과적합이 발생하여 모델이 무의미 - 사용한 이벤트 파일 : 임의로 chatgpt 4.0을 이용해 1000개 log를 생성 - 엑셀 파일 형태 교차..

ML 2024.10.25

ML 최적 모델 찾는 방법

안녕하세요. ML분석시 여러 모델들을 파라미터를 하나하나 수정해가면서, 수행할 경우 피로도가 높았습니다. 아래와 같은 방법으로 여러 모델로 테스트하여 최적의 모델 및 파라미터들을 찾는데 활용하시면 도움이 될꺼같습니다. from sklearn.model_selection import train_test_split, GridSearchCV from sklearn.metrics import accuracy_score from sklearn.ensemble import RandomForestClassifier from sklearn.svm import SVC from sklearn.linear_model import LogisticRegression # 데이터를 훈련 세트와 테스트 세트로 나눕니다. X_trai..

ML 2024.02.16

ML 분석시 최적의 조합 찾기 위한 방법

안녕하세요. 현재 개발하고 있는 솔루션은 ML로 수행하여 최적의 cluster 파라미터를 찾고있습니다. 그러다가 max_feqtures, cluster개수를 수작업으로 수행하다가, 그냥 for문으로 시작과 끝점만 알려주고 Score가 가장 큰값을 찾게 하는게 나은거같아 아래와같이 코드를 추가하여 최대값을 찾고있습니다. 대부분은 ari score가 아닌 label을 정의하고 해당 label로 유사도 측정을 하는데요, 저는 사전 정의된 label이 없어서 ari score로 아래 코드로 반복수행하여 최대값을 찾는 과정중에 있습니다. 저와 같은 고민이 있으셨던 분들은 아래코드 활용하세요. cf) Kmeans 외에 다른 방법까지 추가하는 반복문을 하면 best일거같으나, 그럴경우 시간이 상당히 걸리긴 하네요. ..

IT 2024.02.14