전체 글 102

Linux 필수 명령어

리눅스를 시작하기 위해서 필수적으로 알아야 할 명령어는 무엇일까 고민하며 정리하였다.(명령어와 관련된 실습은 계속해서 업데이트할 예정) 1. 파일/디렉터리생성, 이동, 삭제, 복사cd: 디렉터리 이동mkdir: 디렉터리 생성rm: 파일/디렉터리 삭제mv: 파일/디렉터리 이동 또는 이름변경cp: 파일/디렉터리 복사 검색, 읽기ls: 디렉터리 목록 확인cat: 파일 내용 출력find: 파일/디렉터리 검색grep: 특정 키워드가 포함된 파일 검색pwd: 현재 디렉터리 경로 확인  2. 권한/계정id: id 정보 확인chgrp: 파일/디렉터리 그룹 변경chmod: 파일/디렉터리 권한 변경chown: 파일/디렉터리 소유자 변경passwd: 사용자 비밀번호 변경groupadd: 새 그룹 생성useradd: 새 사용..

Back-End/Linux 2024.08.20

Git 시작하기

1. Git 이란소스코드와 파일의 변경이력을 추적하고 관리할 수 있는 도구로 팀단위로 개발할 때 필수적으로 사용되는 도구이다.또한 Git은 검은 화면의 터미널을 사용하기 때문에 기본적으로 리눅스 지식이 필요하다. 아래 Linux 명령어만 숙지해도 Git을 사용하는 데는 문제가 없을 것이라고 생각한다. Linux 필수 명령어리눅스를 시작하기 위해서 필수적으로 알아야할 명령어는 무엇일까 고민하며 정리하였다.(명령어와 관련된 실습은 계속해서 업데이트 할 예정)  1. 파일/디렉토리생성, 이동, 삭제, 복사cd: 디rybbit-life-debugging.tistory.com  2. Git 관련 개념2.1 레포지토리(Repository)소스코드와 변경이력을 관리하는 저장소를 레포지토리(Repository)라고 한..

Back-End/Git 2024.08.13

구글해킹(Google Hacking)

1. 구글 해킹이란구글을 해킹하는 것이 아닌, 구글의 고급 검색 연산자를 통해서 보안 취약점 또는 민감한 정보를 찾는 기술이다. 구글 해킹(google hacking)은 다른 말로 구글도킹(google dorking)이라고도 하며 구글 도킹은 고급 검색 연산자를 통한 정보수집을 하는 것을 의미한다. 이를 악용하여 취약점 또는 민감한 정보를 수집한 것이 구글 해킹이다. 하지만 두 용어는 자주 혼용해서 쓰는 것으로 보인다.  2. 자주사용되는 연산자" "큰따옴표에 사이에 단어를 넣어 검색하면, 특정단어가 포함된 내용만 검색한다. 예를들어 "보안"이라고 검색하게 되면, 보안이라는 단어가 들어간 내용만 검색한다. 만약 해당 큰 따옴표 없이 검색하면, 단어와 연관된 검색어도 추가로 검색한다. -특정 단어를 제외하..

Security 2024.08.11

웹서버(WS)와 웹 애플리케이션 서버(WAS)의 차이

1. 웹서버(WS; WebServer)서버-클라이언트의 개념을 알고 있다면, 웹서버(WS)는 웹 환경에서 서비스를 제공하는 주체이고 웹클라이언트는 서비스를 요청하고 제공받는 주체라는 것을 알 수 있다.  웹서버에 대해서 좀더 구체적으로 살펴보자면, 웹 클라이언트가 웹브라우저 URL를 통해 HTTP 요청을 했을 때, 웹서버는 해당 요청을 받아 HTML, CSS, JS과 같은 정적인 콘텐츠를 제공하는 역할을 한다. *대표적인 웹서버는 Nginx, Apache, IIS(windows전용 웹서버)가 있다.  2. 웹 애플리케이션 서버(WAS; WebApplicationServer)란?웹 애플리케이션 서버는 웹서버와 동일하게 HTTP 통신을 하며, 정적인 콘텐츠를 제공한다. 하지만 추가적으로 동적인 콘텐츠를 제공..

Back-End 2024.08.01

보안관련 직무: CERT(침해사고 대응팀)이란?

1. CERT란? 화재가 일어났을때 소방관이 화재를 진압한다. 그렇다면, 보안사고가 발생하면 누가 처리 할까? 여기서 CERT가 등장한다. CERT는 조직내에서 침해사고가 발생했을 때, 사고의 원인과 피해규모를 신속하게 파악하여 피해를 최소화하기 위한 대책을 마련하고, 사고조치 이후에는 재발방지를 위한 보안정책 수립 및 보안강화 등의 업무를 수행하는 직무이다. 침해사고대응팀(CERT, Computer Emergency Response Team)기업 등 한 조직內에서 발생하는 침해사고 대응을 위해 사고처리 및 피해 복구, 보안정책 수립, 보안강화 등의 임무를 수행하는 대응조직출처: KISA 정보보호용어  1.1 CERT와 보안관제의 차이점CERT와 보안관제는 침해사고 대응과 밀접하게 연관되어 있으며, 회사..

Security 2024.08.01

[프로젝트] SW 공급망 보안 개선을 위한 SBOM 무결성 검증 시스템

1. 프로젝트 개요목적: SBOM(소프트웨어 구성 명세서)의 무결성을 블록체인을 통해 검증 및 관리배경: Log4Shell 사태 등 오픈소스 취약점이 발생해도, 기존 시스템에선 SBOM의 최신화와 무결성 확인이 어려움성과: Flask로 구현한 SBOM 자동 생성 기능 및 블록체인 기반 무결성 검증 페이지 완성  2. 프로젝트 소개문제점: SBOM 문서를 단순히 수작업 또는 기존 저장소에만 보관할 경우, 위·변조가 가능하고 최신 상태를 유지하기 어려움해결책: SBOM 데이터를 블록체인 네트워크에 등록하여 수정 이력 추적 및 무결성 검증비즈니스적 가치:신속 대응: 보안 취약점(예: Log4Shell) 발견 시, 해당 라이브러리 사용 여부를 즉각 파악투명성 확보: 블록체인을 통한 ‘변경 불가능’한 이력 관리로..

ETC/Project 2024.07.25

[프로젝트] 보안관제 프로젝트

1. 프로젝트 소개snort 기반 악성코드 탐지 패턴을 개발하기 위해, 네트워크 행위를 하는 악성코드 샘플을 수집하여 분석을 진행하고 관련된 내용을 악성코드 분석보고서를 작성하였다. 또한 악성 트래픽을 탐지하기 위한 보안관제 환경을 구축하고 snort룰을 적용하여, 악성 네트워크 행위를 탐지하는 실습을 수행하였다. 2. 프로젝트 회고2.1 악성코드 분석 업무에 대한 자신감악성코드 샘플링, 악성코드 기초/정적/동적 분석, snort 룰 작성등의 전반적인 과정등을 수행하면서 실무에서도 악성코드 분석 업무를 빠르게 숙지할수 있겠다는 자신감이 생겼다. 2.2 신속한 분석의 중요성악성코드 분석도중 악성코드의 네트워크 행위가 중단되어 다시 새로운 악성코드 샘플을 수집해야하는 문제가 있었는데, 악성코드 분석 업무에서..

Security 2024.07.25

네트워크(정의, 분류, 통신방식)

1. 네트워크란?학술적인 정의로는 두개 이상의 노드가 데이터를 교환하는 시스템이다. 여기서 데이터는 구체적으로 데이터 패킷이라고 이야기 한다. 여러 기기가 데이터를 주고 받는 구조가 그물망 처럼 보인다고 네트워크라고 이야기한것으로 보인다. *여기서 노드란 컴퓨터나 데이터를 공유하는 장비를 의미한다. 2. 인터넷이란?전세계의 네트워크가 연결된 거대한 네트워크를 인터넷이라고 한다.  3. 네트워크 분류크기와 연결방식에 따라 분류할수 있다. 3.1 크기에 따른 분류네트워크는 범위에 따라 LAN과 WAN으로 분류한다.(세부적으로 CAN, MAN, PAN으로 분류하기도 한다.)  LAN(Local Area Network)은으로 가까운 위치에 해당하는 네트워크이고, WAN(Wide Area network)는 LAN..

Back-End/Network 2024.07.25

2024.07 크라우드스트라이크발 전산 마비 사태

CrowdStike의 CroudStike Falcon(EDR 솔루션)은 포춘 500 기업에서도 사용되는 보안 솔루션이다. 그런데 해당 EDR 솔루션의 업데이트와 Microsoft에서 제공하는 Azure 인프라와 충돌이 발생하여 블루스크린 오류가 발생하였다. 해당 오류로 인해 전세계에 있는 방송, 항송, 의료, 구급 시스템 등 많은 곳이 일제히 마비가 된 것으로 보인다. CrowdStrike는 업데이트가 850만대에 Windows 기기에 영향을 미친것으로 추정하고 있다.(Windows 기기의 1%) 규모가 크지 않지만, 방송, 항공, 의료와 같은 중요한 분야가 마비됬다는 부분에서 사회적인 영향이 큰 사건으로 보인다.  여기서 EDR 솔루션이란, Endpoint Detection and Response의 약..

ETC/IT News 2024.07.19

서버 안정성을 위해 알아야할 개념 3가지 (가용성, 이중화, 로드밸런싱)

1. 가용성(Availability)서버를 관리할때 고가용성(HA; High Availaility)을 보장해야한다는 말을 한다. 여기서 가용성이란, 서버가 정상적으로 작동하는 비율을 의미한다. 구체적인 예시로 업타입 / 업타입 + 다운타입이 99.99999 정도의 고가용성을 지향한다는 말이 있다.*업타임은 서버가 정상작동하는 시간을 의미하고, 다운타임은 서버에 문제가 생겨 작동하지 않는 시간을 의미한다.  2. 이중화/다중화서버를 운영하다보면, 분명히 한번은 장애가 발생한다. 그러므로, 서버가 정상작동하도록 고가용성(HA)를 보장하는것도 중요하지만, 결함감내(fault tolerance)라는 특성도 보장하는것이 중요하다. 결함감내(fault tolerance)란, 서버에 장애가 발생하더라도 서버가 동작하..

Back-End 2024.07.18