최신 인증 기술 동향
·
Security/etc
1. 인증 방식의 발전과 유형별 특징 인증 방식의 진화- 사용자 인증은 지식 기반 → 소유 기반 → 생체 기반으로 진화하며 보안성이 강화되는 추세이다.방식대표 예시장점단점지식 기반패스워드, ID저비용, 사용자 편의성보안 취약(노출 시 무력화)소유 기반OTP, 공인인증서지식 기반보다 보안성 높음시스템 구축 비용 발생, 유출 위험생체 기반지문, 홍채, 정맥 등보안성 및 편의성 우수관리 비용 높음, 훼손 시 문제 2. 기존 인증 체계의 한계와 공인인증서 폐지 기존 인증의 문제점- 공인인증서: 발급 및 갱신(일정 주기)이 번거롭고, Active-X 등 추가 프로그램 설치가 강제됨.- 보안 사고: 아이핀 해킹(부정 발급), 공인인증서 유출, ID/PW 도용 사례가 지속적으로 발생함.- 서버 저장 방식: 생체정..
인증 - 비밀번호&계정관리
·
Security/etc
1. 사용자 인증 (User Authentication)(1) 사용자 인증이란?사용자 인증은 컴퓨터 시스템, 네트워크, 웹 서비스 등에서 사용자의 신원을 확인하고 검증하는 과정을 의미한다.이를 통해 시스템은 정당한 권한을 가진 사용자만이 자원에 접근하도록 제한하며, 정보 보안을 유지하는 가장 핵심적인 첫 번째 방어선 역할을 수행한다.(2) 사용자 인증 3단계일반적으로 사용자 인증은 다음의 세 가지 절차를 거쳐 이루어진다.시스템 접근: 사용자가 시스템에 접속을 시도한다.정보 요구: 시스템은 신원 확인을 위해 사용자 이름(ID)과 비밀번호, 또는 기타 인증 수단을 요구한다.검증 및 권한 부여: 시스템은 사용자가 제공한 정보를 내부 데이터베이스와 비교·검증하며, 확인이 완료되면 결과에 따라 적절한 권한을 부여..
정보보안의 핵심, CIA 트라이어드와 5대 원칙
·
Security/etc
1. 정보보안의 정의와 목적 정보보안이란 정보시스템을 내·외부의 위협으로부터 안전하게 보호하기 위한 모든 관리적, 기술적 수단을 의미한다. 이는 정보의 생성부터 소멸까지 전 생명주기를 관리하며, 단순한 데이터뿐만 아니라 시스템의 신뢰성과 서비스의 연속성, 그리고 사용자의 개인정보를 보호하여 신뢰할 수 있는 디지털 세상을 만드는 것을 목적으로 한다. 2. 정보보안의 기본 3원칙: CIA 트라이어드 CIA 트라이어드란 시스템이 가장 안전한 상태를 유지하기 위해 균형을 이루어야 하는 세 가지 핵심 요소이다. ① 기밀성 (Confidentiality): 인가된 사용자만 접근 가능 - 정의 : 오직 인가된 사람, 프로세스, 시스템만이 알 필요성에 근거하여 시스템에 접근해야 한다는 원칙이다.- 주요 위협 : 네..
정보보호 동향
·
Security/etc
1. 해킹의 정의와 변천 국어사전에서는 시스템 무단 침입 및 파괴 행위로 정의하나, 영영사전에서는 디자이너가 의도하지 않은 방식으로 시스템 특성을 이용하는 창조적 사용법으로 정의함. - 1950년대 이전 : 폴란드 전문가들이 개발하고 독일군이 군사통신 보안용으로 사용한 암호화 기계 '에니그마(Enigma)'가 대표적 - 1960년대 : 2,600Hz 휘파람 소리를 내는 장난감 호루라기를 이용해 무료 장거리 전화를 사용한 '전화망 해킹' 사례가 발생 - 1980년대 : 60개 시스템에 침입해 파일을 삭제한 '414 Private' 그룹의 활동과 로버트 모리스의 웜 바이러스 등 본격적인 컴퓨터 해킹이 시작됨 2. 주요 보안 위협 사례 (2000년대 ~ 현재) 사이버 공격은 단순한 흥미 위주에서 점차 경제적 ..
Buffer Overflow 실습 - SetUID 권한 탈취
·
Security/Pwnable
목표 : 스택 기반 버퍼 오버플로우를 이용하여 SetUID 바이너리를 공격하고, 다른 사용자의 권한으로 셸을 획득한다. 실습환경항목내용OSUbuntu 24 (x86-64)컴파일러GCC디버거GDBASLR비활성화 (kernel.randomize_va_space=0)보호 기법Stack Canary, NX, PIE 모두 해제1. 취약한 프로그램 분석 super.c#include #include int copier(char* str){ char buffer[128]; strcpy(buffer, str); // ⚠️ 길이 검증 없음 → 버퍼 오버플로우 발생 가능}void main(int argc, char* argv[]){ int i = 10; copier(argv[1]); printf..
KMP 알고리즘
·
Algorithm
Codetree 몇 문제를 풀다가 환기 좀 할 겸, 백준에서 우연히 KMP라는 알고리즘을 알게 되었다.어떻게 보면 DP에 속하는데 주어진 문자열 속 특정 패턴을 찾을 때 아주 효과적이라고 한다. 우리가 문자열 속에서 특정 패턴을 찾을 때, 가장 쉬운 방법이 무엇인가?바로 완전 탐색(브루트포스)이다.import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = ..
Cursor AI를 활용한 웹 서비스 구축
·
Web
기존에 VS Code나 Intellij에 코파일럿을 연동하면 코드가 자동 완성 되는 기능이 있었다.하지만, 에이전트가 대화 컨텍스트를 유지하고 서비스의 전체 코드를 파악하기에는 어려움이 있었다. (내가 모르는 기능이 있을지도...?) 주석을 통해 메소드 몇 개 짜는 거야 코파일럿이 금방 만들지만, 코드 전체적으로 보았을 때 맞지 않는 로직이 많아서 꺼두고 개발을 진행한 적이 많았다. 최근에 Cursor와 Claude가 화제가 되면서, 바이브 코딩이 유행하고 있다.프롬프팅만 잘한다면, 5분 만에 간단한 서비스를 만드는 건 일도 아니다. 코딩 툴로는 다음과 같은 것들이 있다.대부분 유료 플랜을 제시한다.그 중에 Cursor는 14일간 무료로 pro 플랜을 쓸 수 있게 해주기 때문에 Cursor를 사용하여 웹..
MCP 서버 구축 - 2
·
MCP
간단하게 a + b를 구하는 MCP 서버를 만들어 보았으니, 이번에는 OpenWeatherMap API를 활용하여 MCP 서버를 구축해보려고 한다.오픈 API를 사용하기 위해서는 API Docs를 살펴보고 API Key를 발급 받아야 한다. 먼저, OpenWeatherMap 사이트로 이동해보자.https://openweathermap.org/ Current weather and forecast - OpenWeatherMapOpenWeather Weather forecasts, nowcasts and history in a fast and elegant wayopenweathermap.org만약, 회원가입 / 로그인이 되어있지 않다면 진행해주자.네비게이션 바에 보면 API라는 부분이 있다.들어가보면, 우리..