2026/04 7

Vercel 내부 시스템 무단 접근 사고 - 26.04.20

2026년 4월 19일, Vercel이 내부 시스템에 대한 무단 접근이 발생했다고 공식적으로 인정했다.Vercel은 Next.js의 핵심 후원사이자 전 세계 수백만 개발자가 사용하는 클라우드 배포 플랫폼이다. 이 사건이 단순한 기업 침해로 끝나지 않은 이유는, Vercel이 인터넷 인프라의 핵심을 담당하고 있기 때문이다. https://vercel.com/kb/bulletin/vercel-april-2026-security-incident무슨 일이 있었나이슈: 공격자가 Vercel 내부 시스템에 침투해 소스 코드, 직원 계정 데이터, 고객 환경 변수, NPM 토큰, GitHub 개인 액세스 토큰(PAT)을 탈취했다고 주장했다. Vercel은 "제한적인 하위 집합(limited subset)"의 고객이 영..

Web 2026.04.20

Good Bye! BOJ! 백준 메모리얼 웹 배포 후기

BOJ 서비스 종료 공지를 보고 뭔가를 남겨야겠다는 생각이 들었다.메모리얼 방명록 사이트를 만들었다. goodbye-boj.com이다.만든 이유16년을 버텨온 플랫폼이 공지 하나로 마감됐다. 공지를 읽고 바로 개발을 시작했다.BOJ와 함께 성장한 사람들이 한마디씩 남길 공간이 있으면 좋겠다고 생각했다. 그리고 4월 28일 종료일까지 카운트다운이 흘러가는 사이트가 어울릴 것 같았다.주요 기능기능은 단순하게 잡았다.카운트다운 타이머 — 2026-04-28 종료일까지 실시간 카운트다운방명록 — Google 로그인 후 140자 이내 메시지 작성, 하루 1회 제한좋아요 반응 — 다른 사람 글에 좋아요(❤️) 반응 전송플로팅 배경 — 방명록 메시지들이 화면을 가로질러 흐르는 인터랙티브 배경프로필 — BOJ 닉네임,..

Web 2026.04.16

백준 (BOJ) 서비스 종료

2026년 4월 28일, BOJ가 문을 닫는다.16년의 끝백준 온라인 저지(BOJ)는 2010년 3월에 시작됐다. 최백준이 혼자 운영해온 알고리즘 문제 풀이 플랫폼으로, 국내 PS(Problem Solving) 커뮤니티의 사실상 중심지였다.오늘, 서비스 종료 공지가 올라왔다."여러 상황의 변화로 인해 부득이하게 서비스를 종료하게 되었습니다."구체적인 이유는 밝히지 않았다. 하지만 16년을 혼자 끌어온 무게가 공지 한 줄에 담겨 있다.사라지는 것들서비스 종료 시점에는 문제, 제출 기록, 대회 정보를 제외한 모든 데이터가 삭제된다.오늘 이후 탈퇴 요청은 종료 직후 일괄 처리문제집, 그룹 생성 기능은 이미 제한될 수 있음4월 28일까지는 정상 이용 가능아직 남은 시간이 있다면, 풀었던 문제들을 백업해두는 편이..

알고리즘/BOJ 2026.04.15

[풀스택 100시간 과정] #4 - 세션, 쿠키, API, 페이징

이번 수업에서는 로그인 구현의 핵심인 쿠키와 세션, 서버와 클라이언트가 데이터를 주고받는 규칙인 REST API, 그리고 대용량 데이터를 다루는 페이징까지 한 번에 다뤘다.쿠키 (Cookie)쿠키는 서버가 브라우저에 심어두는 작은 텍스트 파일이다. 브라우저에 저장되기 때문에 유저가 직접 열어볼 수 있다. 그래서 보안에 민감한 정보는 넣으면 안 된다.주로 이런 상황에 쓰인다: "오늘 하루 보지 않기", "아이디 저장", 쇼핑몰 장바구니. HTTP는 기본적으로 Stateless(상태 없음), Connectionless(연결 없음) 특성을 가지는데, 쿠키가 그 공백을 메운다.// 쿠키 저장 (만료일 포함)const setUserInfoCookie = (username, expirationDays) => { ..

Web 2026.04.13

[풀스택 100시간 과정] #3 - 서버와 HTTP

이번 수업에서는 웹 개발의 가장 기본적인 개념인 클라이언트-서버 구조와, 둘 사이에서 데이터를 주고받는 방식인 HTTP를 다뤘다.Next.js로 이미 개발을 해본 입장에서 개념 자체는 낯설지 않았지만, 구조를 정리해서 언어로 설명하는 건 또 다른 일이다.클라이언트와 서버개념설명클라이언트서버에 요청을 보내는 프로그램 또는 장치 (ex. 웹 브라우저)서버요청을 받아 처리하고 응답을 돌려주는 컴퓨터 시스템 클라이언트는 장군, 서버는 성, 그 안의 왕이 웹 서버다. 장군이 성에 물 100L 보급을 요청하면, 왕이 허가하고 처리하는 구조다.이 비유를 전체 개념에 매핑하면 이렇다.비유실제 개념장군클라이언트성서버왕웹 서버좌표IP 주소도로명주소도메인성문포트 (0~65535)성벽방화벽마패인증 (Authentication..

Web 2026.04.13

AI·SW 마에스트로 서울센터 17기 최종 합격 후기 - 고등학생 최연소

안녕하세요, 오늘은 좀 늦었지만, AI·SW 마에스트로 (이하, 소마) 합격 후기를 적어보려합니다. 1. AI·SW 마에스트로는 무엇인가?2010년부터 시작한 최우수 SW 인재를 발굴하여, 체계적이고 파격적인 지원을 통해 SW 산업 발전에 기여하기 위해 기획된 정부 지원 사업. 실제로 국내 IT 대외활동 중 최고 수준의 지원을 받는다.소프트웨어 마에스트로는 과학기술정보통신부와 정보통신기획평가원에서 주관하고, 한국정보산업연합회에서 운영하는 과정으로, 국내 소프트웨어 전문가들을 만들자는 취지하에 운영되고 있다. 소프트웨어 산업 분야별 전문가를 멘토로 지정하여 도제식 교육 방식을 통해 프로젝트를 수행하면서 지도받는 시스템이다. 그 외적으로, 여기서 만날 수 있는 멘토님들과 지원금등, 물적, 인적 지원을 받을..

[풀스택 100시간 과정] #2 - JS 입출력, 조건문, 반복문

JavaScript는 브라우저에서 웹을 동적으로 구현하기 위해 만들어진 언어이다. 이를 웹 브라우저가 아닌 환경에서 실행하게 해주는 런타임 환경이 Node.js이다.앞서 말했다싶이, JS는 원래 웹 브라우저에서 돌아가는 언어이기 때문에, 입력을 받으려면 npm에서 readline-sync을 다운받아야 한다.npm install readline-sync 입출력 예제 코드는 다음과 같다.import readlineSyncModule from 'readline-sync'const name = readlineSyncModule.question('이름 입력 : ')console.log('입력받은 이름 : ' + name)const age = parseInt(readlineSyncModule.question('이름..