본문 바로가기

전체 글70

[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(39일차) 오늘 학습 주제 1. Command Injection 2. XSS Command Injection - 운영체제 명령어(Shell Command) - 사용자와 운영 체제 커널 간의 인터페이스 역할을 하는 프로그램의 명령어 - Command Injection - 어플리케이션에 운영체제 명령어를 실행하는 기능이 존재하는 경우 외부 입력값을 검증, 제한하지 않고 운영체제 명령어 또는 운영체제 명령어의 일부로 사용하는 경우 발생 시스템 제어권을 탈취하여 해당 시스템을 공격자 마음대로 제어하게 됨 외부 입력값을 검증하지 않고 사용 추가 명령어 실행에 사용되는 &, |, ; 등의 문자열 포함 여부를 확인하지 않고 사용 외부 입력값을 제한하지 않고 사용 내부 로직에서 사용할 수 잇는 명령어 또는 명령어의 파라미터 값을.. 2023. 12. 18.
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(38일차) 오늘 학습 주제 1. SQL Injection SQL Injection - Injection(삽입) - 외부 입력값을 내부 처리에 사용하는 경우 외부 입력값에 처리를 조작하는 문자열 포함 여부를 확인하지 않고 사용하는 경우 원래 의도했던 처리가 변경되어 수행되는 것 이때, 처리가 쿼리문을 만들고 실행하는 처리 ⇒ SQL 삽입 XPath 또는 XQuery 구문을 이용해서 XML 문서를 조작하는 처리 ⇒ XPath 삽입, XQuery 삽입 LDAP 서버에 쿼리를 실행하는 처리 ⇒ LDAP 삽입 운영체제 명령어를 실행하는 처리 ⇒ Command 인젝션 = 운영체제 명령어 삽입 - Injection 방어 - 입력값을 검증, 제한하여 외부에서 전달되는 값에 처리를 조작하는 문자열 포함 여부를 확인하고 사용 처리를.. 2023. 12. 15.
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(37일차) 오늘 학습 주제 1. 취약점 진단 및 대응 취약점 진단 및 대응 - SQL Injection - 외부 입력값에 쿼리 조작 문자열 포함 여부를 확인하지 않고 쿼리문 생성 및 실행에 사용하는 경우 쿼리의 구조와 의미가 변형되어 실행되는 취약점 문제점 권한 밖의 데이터 접근이 가능 해당 데이터베이스가 동작하는 서버를 원격지에서 마음대로 조작(서버 제어권 탈취) 해당 쿼리를 통해 제공하는 기능을 우회 또는 오용 가능 select * from users where id = 'a' and pw = 'b' ' → 문자열 시작과 끝을 나타내는 특수 부호, '가 문자 그 자체로 인식되도록 이스케이프 처리( \' 를 사용해도 동일) select * from users where id = 'a'' and pw = 'b'' .. 2023. 12. 14.
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(36일차) 오늘 학습 주제 1. 소스코드 취약점 진단 2. 소스코드 취약점 진단 실습 3. 클라우드 진단 소스코드 취약점 진단 - 동적 진단 vs 정적 진단(소스코드 진단) - 동적진단 장점 상대적으로 진단 소요기간이 적다 (1 URL = 2~3 Day or 1 ~ 2 week) 단점 상대적으로 누락의 가능성이 높음 정적 진단 장점 보다 Depth 있고 상세한 진단이 가능(정답지인 소스코드를 보고 진단하기 때문) 단점 진단 소요기간이 오래 걸린다(최소 2주~수개월) 진단자 역량에 따라 결과 산출물의 품질이 달라진다(코드가 사용하는 언어의 이해도에 따라 달라진다) 그렇기에 소스코드 방법론(data tracing)을 사용 - 소스코드 진단 - 소스코드 진단 정의 소스코드를 활용하여 애플리케이션 내 모든 입/출력 값에 .. 2023. 12. 13.