분류 전체보기 130

[Meltdown and Spectre] 엎질러진 물

💡Meltdown: 비순차실행을 이용해, user application 주제에 kernel 데이터를 읽는 공격  발생 원리✅1: user mode application이 커널 영역의 메모리 주소에 접근 시도 예시 1예시 2ptr: kernel 영역의 주소. ✅2: 비순차실행1.에 의해 아래 과정이 일어나야 한다.i) 가상 주소의 Address translation: 가상 주소인 (kernel)을 물리 주소로 변환ii) PTE 로드: 주소 변환을 위한 Page Table 참조iii) permission check: 해당 물리 주소에 접근 권한이 있는지를 PTE의 권한 정보를 바탕으로 체크    -> 권한이 없네! -> page fault exception 그런데 이것은 시간이 한참 걸리므로,비순차실행에 ..

[Malware: Malicious Software] Type, History, Detection, Trend

Malware types Virus: OS 등 host에서 target file (일반적으로 실행파일)을 찾아 자기 자신의 복사본을 삽입하여 전파하는 코드 조각 * virus의 주요 위치: - Boot sector -> 다른 어떤것보다도 먼저 control 능력을 가짐  - Memory resident - Applications, macros, data, etc. - Library routines - Compilers, debuggers, virus checker, etc. * 독립적으로 실행될 순 없고, host 프로그램이 이것을 실행하게 해야 실행됨* target file이 실행되면 virus도 실행되기 시작 * 오염된 file이 machine에서 machine으로 이동할 때에만 퍼짐 Worm: 어떤..

IT/시스템 보안 2024.06.11

[Command Injection] 발생 원리, exploit 예시, 예방

Command Injection: 시스템 명령어를 실행하는 함수에 이용자가 입력을 통해 임의의 인자를 전달할 수 있을 때 발생- 공격에 사용되면 웹 애플리케이션에 임의 명령어를 실행할 수 있어 공격 파급력이 높음인젝션(Injection): 악의적인 데이터를 프로그램에 입력하여, 이를 시스템 명령어, 코드, 데이터베이스 쿼리 등으로 실행되게 하는 기법- 웹 애플리케이션을 대상으로 하는 인젝션 공격은 SQL Injection, command injection 등이 있음  발생하는 이유웹 애플리케이션을 개발하다보면, 어떤 기능에 대해서는 스스로 코드를 작성하기보다 이미 설치된 소프트웨어를 사용하는 것이 편리할 때가 있다. 업로드 디렉토리에 있는 파일들의 이름을 출력하는 웹 애플리케이션을 만든다고 할 때, 디렉..

IT/웹 보안 2024.06.08

[NoSQL Injection & Blind NoSQL Injection]

NoSQL Injection: 이용자의 입력값이 쿼리에 포함되어, 이용자가 원하는 요청을 실행하는 취약점 ㅡ SQL Injection과 공격 목적 및 방법이 매우 유사 SQL과 달리, NoSQL은 사용하는 DBMS에 따라 요청 방식과 구조가 다른데이 글에서는 MongoDB에서의 NoSQL Injection만 알아볼 것임 MongoDB에서는 SQL이 저장할 수 있는 데이터의 자료형인 문자열, 정수, 날짜, 실수 외에도 오브젝트, 배열 타입을 사용할 수 있는데,오브젝트 타입의 입력값을 처리할 때에는 쿼리 연산자를 사용할 수 있어,이를 통해 다양한 행위가 가능 >> Node.js의 express 프레임워크로 짜인 소스코드 예시const express = require('express');const app = ..

IT/웹 보안 2024.06.08

[SQL Injection & Blind SQL Injection]

SQL InjectionDBMS의 SQL 쿼리에 임의의 입력값을 넣어 쿼리를 조작하여, 인증을 우회하거나 데이터베이스 정보를 유출하는 공격- SQL을 이해하고 있다면, 모든 RDBMS에 대해 SQL Injection 가능SQLDBMS에 데이터를 질의하는 언어Injection이용자의 악의적인 입력값이 애플리케이션의 처리 과정에서 구조나 문법적인 데이터로 해석되어 발생하는 취약점 예시 상황웹 서비스 내에,로그인을 위해 아이디와 비밀번호를 입력받고, 이를 DBMS에 조회하기 위한 쿼리에 포함하여 쿼리를 실행하는 페이지가 있다 하자.  이때 user_table은 아래와 같다. 정상적인 쿼리아이디와 비밀번호 칸에 정상적으로 각각 dreamhack, password를 입력하면 쿼리는 아래와 같이 생성된다. 쿼리 설..

IT/웹 보안 2024.06.08

[Cross Site Request Forgery (CSRF)]

CSRF는 임의 이용자의 권한으로 임의 주소에 HTTP 요청을 보낼 수 있는 클라이언트 측 취약점이다.  웹 서비스 예시 소스 코드이용자로부터 예금주와 금액을 입력받고 송금을 수행한다. 이때 계좌 비밀번호, OTP 등을 사용하지 않기 때문에,로그인한 이용자는 추가 인증 정보 없이 해당 기능을 이용할 수 있다. 송금 요청이 담긴 request는 아래와 같다.  1.attacker는 페이지에 악성 스크립트를 심고, 여기에 victim(정상 이용자)이 접속하도록 / 값을 입력하도록 유도한다.  eg) 악성 스크립트가 담긴 글을 게시판에 작성 악성 스크립트: HTTP request를 보내는 코드- HTML 또는 Javascript를 통해 작성할 수 있음 HTML을 통한 공격 코드 예시태그를 사용해 HTTP 요청..

IT/웹 보안 2024.06.08

[Heartbleed Attack] TLS Record Protocol, Heartbeat Protocol, Heartbleed Attack

TLS▶TLS layer• Application layer→TLS: unprotected data 전송됨• TLS: handles encryption, decryption, integrity checks 수행• TLS→Transport layer: protected data 전송됨 ▶TLS Record ProtocolTLS handshake가 끝나면 client와 server는 header와 payload로 구성된 record를 이용해 데이터를 교환한다. Record Sending Data Receiving Data ▶Hearbeat protocol in OpenSSLclient와 server가 일정 기간 이상 서로에게 데이터를 보내지 않으면 통신을 막음으로써,TLS의 keep-alive feature을..

IT/시스템 보안 2024.06.07

[Cache Side-channel Attacks] Cache, Flush+Reload, Prime+Probe, Countermeasure

배경지식: Cache Locality: 프로그램이 실행되는 동안 주소 공간의 일부분만을 집중적으로 접근하는 경향▶Temporal locality: 최근에 access된 것은 곧 다시 access될 확률이 높다- 따라서 최근에 접근된 데이터를 프로세서 가까이에 유지하면 성능 향상됨 eg. 반복문 안에서는 동일한 명령어가 반복적으로 실행되기 때문에, 해당 명령어는 다시 접근될 확률이 높다.▶Spatial locality: 최근에 access된 것 가까이에 있는 것은 곧 access될 확률이 높다 메모리의 연속적인 주소 공간이 자주 함께 사용되는 경우가 많기 때문 - 따라서 연속된 데이터 블록을 메모리의 상위 수준으로 옮기면 성능 향상됨eg. 배열은 메모리에 연속적으로 저장되며, 배열의 요소들이 순차적으로 접..

[행정행위의 폐지] 취소, 철회, 실효

취소1. 직권취소: 권한 있는 행정기관이 직권으로 위법 또는 부당한 행정행위의 효력을 소멸시키는 것직권취소의 취소권자⓵ 처분청 처분청의 직권취소에는 법적 근거는 필요 없으나, 이 경우에도 취소의 이익과 신뢰보호 이익과의 비교형량은 필요 ⓶ 감독청일반적으로 감독청이 처분청의 처분을 직접 취소할 수는 없음취소의 사유흠이 중대·명백하지 않은 단순위법의 행정행위, 공익위반·합목적성 결여 등의 부당한 행정행위 취소권의 제한- 과거: 행정행위에 흠이 있으면 처분청은 언제든지 취소할 수 있다- 현재:수익적 행정행위 ㅡ 신뢰보호원칙에 의하여 강력한 제한을 받아, 비교·형량의 결과 관계인의 이익이 더 강하면 행정청의 직권취소권은 제한됨 침익적 행정행위 ㅡ 자유롭게 취소  취소가 제한되지 않는 경우관계자가 부정한 수단으로..

2024.06.07