목록전체 글 (97)
'll Hacker
저번 시간까지 정확도, Confusion Matrix에 대해서 설명했다. 불균형한 데이터셋에서 정확도만으로는 신뢰도가 떨어질 수 있는 예시까지 보여줬다. 이번에는 불균형한 데이터 셋에서 정확도보다 선호되는 정밀도(Precision)와 재현율(Recall)에 대해서 설명하고자 한다. 정밀도(=양성예측도) : TP / (TP + FP) = 예측을 Positive로 한 대상 중에 예측과 실제 값이 Positive로 일치한 데이터의 비율재현율(=민감도, TPR) : TP / (FN + TP) = 실제값이 Positive인 대상 중에 예측과 실제 값이 Positive로 일치한 데이터의 비율 재현율이 상대적으로 더 중요한 지표인 경우에는 실제 Positive 양성인 데이터 예측을 Negative로 잘못 판단하게 되..
앞 시간에는 정확도에 대해서 설명했었다. 정확도는 데이터의 어떠한 특징때문에 신중히 사용해야된다는 것을 알았다.그래서 정확도말고 다른 성능평가 지표도 소개할 것이다. 이번 시간에는 오차행렬(Confusion matrix)에 대해서 소개하겠다. Confusion Matrix4분면이 있고, 실제 레이블 클래스 값과 예측 레이블 클래스 값이 어떠한 유형을 가지고 매핑되는지를 나타낸다. TN부터, True Negative로 앞 True는 실제값과 예측값이 같다는 의미이고, Negative는 예측값이 Negative라는 의미이다. 즉, TN은 예측을 Negative값 0으로 예측했는데, 실제 값도 Negative값 0이라는 의미이다. 앞에 정확도 예제에서 다룬 MyFakeClassifier의 예측 성능 지표를 ..
여기까지 전처리였다. 다음은 분류와 회귀를 배우겠다. 하지만 모델의 성능평가를 하기 위해서는 지표를 본다. 그게 성능평가지표이다. 앞에서는 정확도만 평가했지만 이번 시간에는 다양한 성능평가 지표가 있다는 것을 보여주겠다. 레츠 고! 성능평가지표 개요분류 - Accuracy, Confusion Matrix, Precision, Recall, F1-Score, ROC-AUC회귀 - 실제값과 예측값의 오차 평균값이번 시간에 회귀 성능평가지표는 간단하니까 뒤에 회귀 설명할 때 같이하겠다.분류는 결정 클래스 값 종류의 유형에 따라 긍정 or 부정 과 같은 2개의 결괏값을 가지는 이진분류와 여러 개의 결정 클래스 값을 가지는 멀티 분류로 나뉜다. 정확도 (Accuracy)정확도 = 예측결과가 동일한 데이터 건수 /..
A04 : Insecure Design설계 단계에서 필요한 보안 제어가 완전히 구현되지 않거나 비효율적으로 구현된 경우를 말한다. 설계 결함으로 인해 이후 개발 단계에서 여러 취약점이 발생할 가능성이 생긴다. 이러한 설계 결함은 소프트웨어 시스템이 적절한 보안 방어 장치를 갖추지 못하도록 만들 수 있으며, 그 결과 시스템이 특정 공격에 취약해질 수 있다. 안전하지 않은 설계 vs 안전하지 않은 구현?설계 결함은 소프트웨어 시스템의 보안 요구사항이 처음부터 잘못 정의되었거나 아예 반영되지 않았을 때 발생한다. 비즈니스 리스크 평가가 제대로 이루어지지 않아서 발생한다. 이거는 수정할 수가 없다구현 결함은 설계 자체는 올바르게 되었지만 실제 코드를 작성하는 과정에서 오류가 발생하는 것을 의미한다. 잘못된 코드..
A03 : Injection💚사용자가 제공한 데이터가 검증(필터링)하지 않은 경우,💚SQL 쿼리 등을 작성할 때 사용자 입력값을 직접 문자열로 붙이는 방식으로 쿼리를 만드는 경우,💚 파라미터화가 아닌 동적 쿼리 방식을 사용하는 경우, 용어정리⏬더보기1. 동적쿼리 - 애플리케이션에서 실행 중에 쿼리 문자열을 생성하는 방식 2. 쿼리 문자열 - 사용자 입력 등에 따라 실시간으로 쿼리의 내용이 변경될 수 있음. - SQL 쿼리를 작성할 때 사용자의 입력값을 직접 쿼리에 삽입하는 경우가 이에 해당한다. 3. 이스케이프 - 입력값이 쿼리의 일부분으로 해석되지 않고 문자 그대로 처리되도록 하기 위한 방법이다. - 쿼리나 코드에서 특수문자나 입력값이 의도하지 않은 방식으로 해석되지 않도록 처리 예를 들어, 사용..
A02️⃣: Cryptographic Failures민감한 데이터 노출의 원인이 암호화이라고 생각해서 이름을 변경했다고 한다.암호화 시스템이 실패하면 악의적인 행위자가 암호화된 데이터에 무단으로 액세스하여 이를 해독하고 자신의 이익을 위해 악용할 수 있다. 암호화 실패로 인해 발생하는 가장 중요한 위험 중 하나는 개인정보 노출이다. 조직과 개인은 재무 정보, 의료 기록 및 개인 식별 정보와 같은 기밀 데이터를 보호하기 위해 암호화에 의존한다. 암호화 시스템이 실패하면 이 정보는 도난 및 오용에 취약해진다.이것 때문에 하나의 사건이 있다.https://namu.wiki/w/SK%ED%85%94%EB%A0%88%EC%BD%A4%20%EC%9C%A0%EC%8B%AC%20%EC%A0%95%EB%B3%B4%20%..
OWASP top 10 리스트웹 애플리케이션 취약점 중에서 빈도가 많이 발생하고, 보안상 영향을 크게 줄 수 있는 것들을 커뮤니티에서 연구하고 그 중 top 10을 발표한다1️⃣ Broken Access Control (취약한 접근제어) 💚인증을 우회하여 권한없는 리소스 접근 가능 2️⃣ Cryptographic Failures (암호화 실패) 💚민감한 데이터 노출 위험, 암호화 설정 오류 3️⃣ Injection (인젝션) 💚악의적 명령 삽입 (SQL, NOSQL. OS 등) 4️⃣ Insecure Design (불완전한 설계) 💚보안이 고려되지 않은 시스템 설계 5️⃣ Security Misconfiguration (보안 설정 오류) 💚잘못된 보안 설정, 디폴트 설정 유지 ..
Purpose ▶️ Goal모의해킹 대비로 왜 OWASP를 왜 하는 것인가? 라는 질문을 할 수 있다.우리학교 금융보안원에 재직 중이신 선배님께 금보원가고 싶기도 하고 여쭤봤다. 그리고 플젝 같이 했던 팀원이 CTF에서 입상하였다고 해서 물어봤기도 했다. 입상한 사람의 말을 듣고 CTF에서 문제 하나라도 풀고 싶어서 OWASP top 10 공부를 해야되겠다 싶어서 동아리에서 심화스터디로 OWASP top 10 강의를 진행하기로 하였다.OWASP이란?Open Web Application Security Project는 소프트웨어 보안 향상을 목표로 하는 오픈 소스 애플리케이션 보안 커뮤니티이다.OWASP Top 10은 개발자가 설계하고 배포하는 애플리케이션의 보안을 강화할 수 있도록 가장 중요한 애플리케이..