[Security] Secure Coding(7-1) - 프론트엔드 데이터 처리
🔒 시큐어 코딩 수업 정리 클라이언트 서버 구조 📚Client: 사용자 인터페이스(UI)를 제공, 사용자의 요청(예: 브라우저, 모바일 앱)이 발생하는 프론트엔드 부분 📚Server: 클라이언트의 요청을 처리하고 필요한 데이터를 생성하거나 제공하는 백엔드 시스템 통신방식: 웹 환경에서 클라이언트와 서버는 주로 HTTP/HTTPS 프로토...
이 카테고리 안의 글을 최신순으로 훑어볼 수 있도록 제목과 설명을 함께 보여줍니다. 먼저 눈에 들어오는 글부터 읽거나, 하위 카테고리 단위로 내려가며 연속해서 읽으면 흐름을 잡기 쉽습니다.
🔒 시큐어 코딩 수업 정리 클라이언트 서버 구조 📚Client: 사용자 인터페이스(UI)를 제공, 사용자의 요청(예: 브라우저, 모바일 앱)이 발생하는 프론트엔드 부분 📚Server: 클라이언트의 요청을 처리하고 필요한 데이터를 생성하거나 제공하는 백엔드 시스템 통신방식: 웹 환경에서 클라이언트와 서버는 주로 HTTP/HTTPS 프로토...
🔒 시큐어 코딩 수업 정리 XSS 📚XSS: 검증되지 않은 외부 입력 값을 웹 응답에 그대로 반영하여 악의적 스크립트가 실행되는 취약점 → 사용자 브라우저에서 악성 코드가 동작해, 쿠키· 세션 등 민감 정보 탈취 가능 발생 원인 외부에서 입력된 사용자 입력 값을 검증하지 않고 그대로 응답에 반영 DB에 저장된 데이터를 읽어서 출력할 때 ...
🔒 시큐어 코딩 수업 정리 ORM 프레임워크 📚ORM: 객체 지향 언어의 객체와 관계형 데이터베이스의 테이블 간 데이터를 자동으로 매핑하는 기술 ✅ORM 필요성: 불일치 문제 해결: 객체 모델과 스키마 간 불이치 해소 개발 생산성 향상: SQL 직접 작성 부담 감소, 코드 간결화 유지보수성 및 보안 강화: 데이터베이스 접근 추상화로 ...
SQL Injection이 왜 발생하는지, 공격자가 어떤 방식으로 쿼리를 변조하는지, 그리고 prepared statement·입력 검증·권한 제어로 어떻게 방어하는지 정리합니다.
🔒 시큐어 코딩 수업 정리 Command Injection 📚Command Injection: 사용자 입력값이 적절한 검증 없이 시스템 명령어의 일부로 사용될 때 발생하는 보안 취약점 💡발생 원인 운영체제 명령을 실행하는 함수를 사용하는 경우 검증되지 않은 사용자 입력 값이 명령이나 명령의 파라미터로 사용되는 경우 운영체제별 명령...
🔒 시큐어 코딩 수업 정리 인증과 인가 개요 인증과 인가 차이 인증으로 “내가 누구인지” 확인하고, 인가로 “무엇을 할 수 있는지”를 제어 인증(Authentication) 📚인증(Authentication): 내가 나인지’ 증명하는 방법 인증방법에 따라 다음 3가지 방식으로 구분됨 지식기반 인증(ID/...
OAuth2가 권한 위임과 인가를 어떤 흐름으로 처리하는지, access token과 refresh token이 왜 필요한지, 구현 시 어떤 보안 위험을 봐야 하는지 정리합니다.
🔒 시큐어 코딩 수업 정리 JWT(JSON Web Token) 📚JWT(JSON Web Token): JSON 형식의 데이터를 안전하게 전송하기 위한 개방 표준(RFC 7519) 주로 인증(Authentication)과 인가(Authorization)에 사용되며, 클라이언트-서버 간 정보를 교환하는 용도로 활용 ✅특징: 자체 포함: ...
🔒 시큐어 코딩 수업 정리 정규식이란? 📚정규식(Regular Expression, Regex): 텍스트 패턴을 정의하는 표현식으로, 특정 문자열을 검색, 검사, 치환하는 데 사용 다양한 프로그래밍 언어에서 지원하며, 입력 검증, 데이터 추출, 문자열 변환 등에 활용 ✅주요 기능: 특정 패턴의 문자열 찾기 (search, mat...
🔒 시큐어 코딩 수업 정리 명령어에서 정규식 활용 grep 명령어 📚grep 명령어: grep(Global Regular Expression Print)은 리눅스에서 문자열을 검색하는 강력한 명령어 특정 패턴을 파일이나 표준 입력에서 찾아 출력하는 역할을 하며, 정규 표현식을 지원하여 다양한 패턴 매칭을 수행 가능 grep...
🔒 시큐어 코딩 수업 정리 입력값 필터 만들기 📚필터(filter): 클라이언트의 HTTP 요청과 응답을 가로채어 특정 작업을 수행하는 서블릿 기반 컴포넌트 웹 애플리케이션에서 보안, 로깅, 데이터 변환등의 작업을 수행할 때 사용 ✅주요 역할: 요청/응답 로깅 인증(Authentication) & 권한 검사(Authori...
🔒 시큐어 코딩 수업 정리 실습환경 구축 웹 서비스 직접 연결이 아니라 프록시 서버를 거쳐 연결하면 간편하게 통신 내용 조작을 통한 취약점 공격, 중요 정보를 가로챌 수 있음. 수업에서는 C드라이브에 압축 해제를 권장하여 이를 바탕으로 실습을 진행 하지만 용량 부족으로 인한 D드라이브 환경 설정 정리 1. 시스템 변수 3...
🔒 시큐어 코딩 수업 정리 Framework와 Platform Framework 📚Framework: 소프트웨어 개발을 위한 구조(틀)와 규칙을 제공하는 재사용 가능한 코드 라이브러리 ✅특징: 개발에 필요한 기본 구조 제공 코드 아키텍처 디자인 패턴 표준화된 개발 방식 반복적...
🔒 시큐어 코딩 수업 정리 SW개발보안 방법론 📚SW개발보안 방법론: 소프트웨어 개발 과정에서 보안성을 강화하기 위해 적용하는 접근 방식 소프트웨어 개발 생명주기(SDLC: Software Development Life Cycle) 전반에 걸쳐 보안 요구사항을 반영하고, 취약점을 예방하는 것을 목표로 함. 💡주요 개념: 보안 내재화:...
🔒 시큐어 코딩 수업 정리 위협모델링(Threat Modeling) 개요 📚위협 모델링(Threat Modeling): 소프트웨어, 시스템 또는 네트워크의 보안 취약점을 사전에 식별하고, 이를 평가하여 적절한 보안 대책을 수립하는 과정 → 설계 단계부터 보안을 고려하고, 실질적인 공격 시나리오를 예측하여 사전 대응할 수 있는 강력한 방법론 ...
🔒 시큐어 코딩 수업 정리 위협모델링 도구 활용 📚위협 모델링 도구: 자동화, 시각화, 협업 기능, 보안 프레임워크 지원 여부 등을 고려하여 선택 ✅도구를 선정할 때 고려해야 할 요소: 자동화 지원 여부: 위협 모델을 자동으로 생성하고, 위협을 분석할 수 있는 기능 UI 및 사용 편의성: 직관적인 인터페이스와 시각화 기능 제공 보...
소프트웨어 보안이 무엇을 막으려는지, 왜 secure development가 중요한지, 그리고 이후 시큐어 코딩 주제가 어떤 기반 위에 놓이는지 정리합니다.
🔒 시큐어 코딩 수업 정리 소프트웨어 개발보안 가이드 📚행정안전부 SW개발보안 가이드: 행정기관 등이 안전한 소프트웨어를 개발하여 각종 사이버위협으로부터 예방, 대응하기 위해 SW 개발단계 부터 SW개발 보안을 적용하기 위한 기준으로 제공 대상: 정보 시스템 감리 대상 정보화 사업 범위: 설계단계 산출물 및 소스코드 전체 ...
🔒 시큐어 코딩 수업 정리 국외 개발보안 현황 국외에서는 소프트웨어 개발보안을 강화하기 위해 다양한 표준과 지침이 마련되어 있다. NIST의 안전한 소프트웨어 개발 프레임워크(SSDF) - 미국 📚SSDF: 소프트웨어 개발 초기 단계에서 보안 요구사항을 명확히 정의하여 보안을 설계에 반영 위험 식별 및 관리: 빌드 시스템을 포함한 개...