728x90
🐬 날으는물고기
🐬 최근 게시글
-
스캐너가 못 찾는 취약점 — IDOR·SSRF·업무 로직 결함, 점검자는 어디를 보나 자동 스캐너는 알려진 패턴 — 오래된 버전, 설정 오류, 단순 인젝션 — 을 잘 찾습니다. 그런데 요즘 실제 사고의 큰 부분은 스캐너가 '정상 응답' 으로 보는 곳에서 납니다. 남의 주문서를 번호만 바꿔 열어 보는 것(IDOR), 서버가 내부 주소로 대신 요청하게 만드는 것(SSRF), 쿠폰을 두 번 쓰는 것. 이런 로직 취약점은 사람이 기능을 이해하고 손으로 눌러 봐야 나옵니다. 점검자가 어디부터 보는지 유형별로 적습니다. 허가된 범위 안에서의 점검을 전제로 합니다.1. IDOR — 가장 흔하고 가장 단순한점검의 기본 도구는 계정 두 개입니다. A 로 주문 상세를 열고 그 요청(예: GET /api/orders/10234)을 잡은 뒤, B 의 세션으로 번호만 바꿔 보냅니다. 읽기는 막혀 있어도 수정(P..
-
로그 관리 기본 — 무엇을 얼마나 남기고, 어디에 모으고, 누가 언제 보나 사고가 났을 때 가장 먼저 찾는 것이 로그인데, 그때서야 '그 로그는 안 남기고 있었다' 거나 '2주 전 건 이미 지워졌다' 는 것을 알게 되는 경우가 많습니다. 로그 관리는 도구보다 무엇을·얼마나·어디에·누가 보나 네 가지를 정하는 일입니다.1. 무엇을 남기나모든 것을 남기면 아무것도 못 봅니다. 위 다섯 묶음이 기준이고, 특히 개인정보·중요 데이터에 대한 접근 기록(누가·언제·어떤 데이터를·어떻게)은 법적 요구이기도 합니다. 각 기록에는 시각·행위자(계정)·대상·결과·출발지(IP)가 있어야 나중에 사람 이야기가 됩니다.2. 얼마나 남기나보안·감사 로그는 1년 이상을 기본으로 보는 경우가 많고, 법령이나 인증 기준에 따라 더 길게 요구되기도 합니다(개인정보 접근 기록 등은 해당 고시를 확인). 애플리케..
-
개인정보 파기 실무 — 보유기간이 끝난 데이터를 찾고, 지우고, 기록 남기기 개인정보는 모으는 것보다 제때 지우는 것이 어렵습니다. 보유기간이 끝났는데 남아 있는 데이터는 그 자체로 위반이고, 유출 사고가 나면 피해 범위를 키웁니다. 처리방침에 '지체 없이 파기한다' 고 적어 두고 실제로는 아무것도 돌아가지 않는 경우가 많아, 담당자가 실제로 돌릴 수 있는 절차로 정리했습니다.1. 대상을 찾는다 — 규칙을 쿼리로'탈퇴 후 즉시', '목적 달성 후 즉시', '1년 미이용 시' 같은 규칙을 실제 테이블 기준의 조건으로 옮깁니다. 예를 들어 탈퇴일로부터 N일 지난 회원, 상담 종료 후 보유기간이 지난 문의, 채용 종료 후 지원서 등. 이 조건을 스크립트로 만들어 월 1회 자동으로 돌리고 건수를 알림으로 받으면 '잊어서 못 지움' 이 사라집니다.2. 법정 보존 항목은 분리 보관으로전자상..
-
로그인·결제 폼의 보안 기본 — CSRF 토큰, 자동완성 속성, 비밀번호 입력 UX, 속도 제한 폼은 사용자와 서버가 만나는 자리라서 보안과 UX 가 같은 곳에서 결정됩니다. 그리고 '보안을 위해' 라며 넣은 장치가 오히려 보안을 해치는 경우가 많습니다 — 비밀번호 붙여넣기 금지가 대표적입니다. 로그인·결제·설정 변경 폼을 만들 때 지켜야 할 기본을 정리합니다.1. CSRF — 남의 사이트에서 내 폼을 보내지 못하게CSRF(교차 사이트 요청 위조)는 로그인된 사용자가 다른 사이트의 페이지를 여는 순간 그 사이트가 몰래 우리 서버로 '비밀번호 변경' 같은 요청을 보내는 공격입니다. 방어는 서버가 발급한 토큰을 폼에 넣고 요청 때 확인하는 것이고, 대부분의 프레임워크가 기본으로 제공합니다. 세션 쿠키에 SameSite=Lax(또는 Strict) 를 두면 브라우저 단에서 한 겹 더 막힙니다. 그리고 상태..
-
PHP 입력값 검증과 SQL 인젝션 방어 — 준비된 문장, 필터, 그리고 출력 이스케이프 SQL 인젝션은 20년 넘게 알려진 취약점이지만 지금도 점검에서 가장 자주 나옵니다. 이유는 간단합니다 — 문자열을 이어 붙여 쿼리를 만드는 코드가 '잘 돌아가기' 때문입니다. PHP 에서 입력값을 다루는 기본 원칙을 받기 → 검증 → 쓰기 → 내보내기 네 단계로 정리합니다.1. 준비된 문장(Prepared Statement) — 예외 없이$pdo = new PDO($dsn, $user, $pass, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_EMULATE_PREPARES => false,]);$stmt = $pdo->prepare('SELECT id, title FROM posts WHERE user_id = :uid AND stat..
-
PostgreSQL 백업과 복구 연습 — pg_dump, 시점 복구(PITR), 그리고 분기 복구 리허설 백업은 '하고 있다' 가 아니라 '복원해 봤다' 가 기준입니다. 백업 파일이 있어도 복원 절차를 모르거나, 복원했더니 깨져 있거나, 복원에 하루가 걸린다면 그 백업은 없는 것과 같습니다. PostgreSQL 기준으로 두 가지 백업 방식과, 가장 중요한 복구 리허설을 정리합니다.1. pg_dump — 대부분의 서비스는 이것으로 시작# 매일 새벽, 압축 포맷으로pg_dump -Fc -h localhost -U app -d appdb -f /backup/appdb-$(date +%F).dump# 복원 (빈 DB 에)createdb -U app appdb_restorepg_restore -U app -d appdb_restore /backup/appdb-2026-06-16.dump-Fc(custom) 포맷은 압..
-
윈도우 업무 PC 보안 기본값 점검 — BitLocker·Defender·계정·업데이트·원격 접속 서버 보안은 신경 쓰면서 직원 PC 는 '설치한 그대로' 인 조직이 많습니다. 그런데 실제 사고의 출발점은 대개 PC 입니다 — 피싱 첨부파일, 분실 노트북, USB. 윈도우 10·11 에는 필요한 기능이 거의 다 들어 있고, 문제는 켜져 있지 않다는 것뿐입니다. 아래 여섯 가지를 PC 마다 한 번씩 점검하면 됩니다.1. BitLocker — 노트북이라면 반드시디스크 암호화가 없으면 노트북을 잃어버렸을 때 드라이브를 빼서 다른 PC 에 꽂는 것만으로 모든 파일이 읽힙니다. 설정 › 개인 정보 및 보안 › 장치 암호화(또는 제어판의 BitLocker)에서 켭니다. 중요한 것은 복구 키 보관 — 회사 계정(Microsoft Entra/AD)이나 관리 도구에 자동 저장되게 하고, 개인 메일이나 메모에 두지 않..
-
VLAN 으로 업무망·게스트망·IoT 망 나누기 — 소규모 사무실 네트워크 분리 설계 작은 사무실의 네트워크는 보통 공유기 하나에 모든 기기가 붙어 있습니다. 직원 노트북, NAS, 프린터, CCTV, 손님 폰이 한 망에 있으면 하나가 뚫리면 전부 보입니다. VLAN 은 스위치 하나로 망을 논리적으로 나누는 방법이고, 요즘은 10만 원대 관리형 스위치와 VLAN 지원 AP 면 충분히 할 수 있습니다. 설계부터 확인까지 순서대로 적습니다.1. 설계 — 망을 몇 개로 나눌 것인가네 개면 대부분의 사무실에 충분합니다. 핵심 원칙은 두 가지 — 게스트와 IoT 는 인터넷만, 업무망에서 서버망으로는 필요한 포트만. 기기 목록을 뽑아 각 기기가 어느 망인지 먼저 적습니다. 프린터처럼 업무망에서 써야 하는 IoT 기기는 '허용 규칙' 으로 처리합니다.2. 스위치 — VLAN 과 포트관리형 스위치에 V..
-
여행 전 스마트폰 준비 — eSIM·오프라인 지도·백업·결제, 떠나기 전날 30분 체크 여행 준비물 목록에 옷과 어댑터는 있는데 스마트폰 설정은 빠져 있는 경우가 많습니다. 그런데 현지에서 가장 자주 곤란한 것이 바로 폰입니다 — 데이터가 안 되고, 지도가 안 열리고, 결제가 막히고, 인증 문자를 못 받습니다. 떠나기 전날 30분이면 대부분을 미리 막을 수 있습니다.1. 데이터 — 로밍·eSIM·현지 유심 가운데 하나를 미리 정한다요즘은 eSIM 이 가장 균형이 좋습니다. 출발 전 집에서 설치하고, 도착해서 데이터 회선만 eSIM 으로 바꾸면 됩니다. 원래 번호는 그대로 살아 있어 문자 인증을 받을 수 있습니다(수신 로밍 요금은 통신사별로 다르니 확인). 현지 유심은 가장 싸지만 번호가 바뀌어 은행·메신저 인증이 막힐 수 있고, 뺀 유심을 잃어버리기 쉽습니다. 무엇을 쓰든 출발 전에 설정 ..
-
디지털 짐 정리 주말 플랜 — 사진·파일·구독·계정을 한 번에 가볍게 방 정리는 눈에 보여서 하게 되는데, 디지털 짐은 보이지 않아서 쌓입니다. 사진 수만 장, 다운로드 폴더의 설치 파일, 언제 가입했는지 모를 서비스, 잊고 결제되는 구독. 주말 하루 반이면 대부분 정리됩니다. 아래는 네 블록으로 나눈 실제 플랜입니다. 한 블록은 두 시간을 넘기지 않습니다.토요일 오전 — 사진사진 앱의 '중복'·'스크린샷'·'흐린 사진' 보기 기능을 먼저 씁니다. 스크린샷은 대부분 그때 필요했던 것이라 통째로 지워도 됩니다. 그 다음 월별로 넘기며 같은 장면 연사는 하나만 남깁니다. 끝으로 클라우드 백업이 켜져 있고 용량이 남아 있는지 확인합니다. 사진 정리의 목표는 '예쁜 앨범'이 아니라 백업이 끊기지 않을 용량 확보입니다.토요일 오후 — 파일다운로드 폴더와 바탕화면을 비웁니다. 설치 ..
728x90
728x90