EASY7
연도별 보안 이슈 및 대표 취약점 본문
2013년
1.25 대란
1.25~30
공격 유형 : 트래픽 과다(슬래머웜)
국내 인터넷망 전체 장애
1,875억원 피해
2009년
7.7 DDoS 대란
미국 독립 기념일(7월 4일) 기점으로 공격이 감지되기 시작하여
7월 7일에 DDOS 공격이 본격적으로 감행되었다.
국가기관, 포털, 금융, 보안 사이트 등 범국가적인 위험 수위까지 근접했었던 초유의 비상사태!
이때 이후로 국민들에게 DDoS와 악성코드 감염된 봇넷의 위험성을 각인시키게 된 계기가 되었다.
2011년
3.4 DDoS
3.4~7
국내외 36개 기관 웹서버
11만대 감염
PC파괴
농협해킹
4.12~ 30
APT
내부전산망 서버
서버 파괴(270대)
197억원 피해
2012년
핵티비즘 : 정치적인 의사를 표시하기 위함.
4.11 총선과 12.19대선 등 정치 이슈가 많았던 해. 각 정당과 정치단체 홈페이지, 언론사 홈페이지를 해킹해 핵티비즘 성격의 사건이 많았다.
2013년
3.20 공격
3.20~26
APT
방송, 금융 6개사 PC/서버 파괴
6.25 공격
6.25~7.1
APT/DDos
국내 69개 정부기관 언론사 PC/서버 150대 파괴
2014년
한수원 해킹
12.9
APT
한수원 및 협력사 PC
문건공개, 5대 PC파괴
2018년
페이스북 개인정보 유출
세계 최대의 SNS 페이스북이 이용자 5천만명의 개인정보를 유출한 것으로 알려져 파문이 있었다.
우리나라도 8만 7천명의 개인정보가 유출되었다.
페이스북의 주가는 이틀사이 10%가 떨어져 무려 500억달러의 시가총액이 증발되었다.
피해를 본 투자자들이 페이스북을 상대로 소송을 제기하고 전세계적으로 페이스북 탈퇴 운동까지 벌어졌다.
가상화폐 채굴 악성코드
-취약점-
하트비트:오픈SSL에서 클라이언트와 웹 서버간 암호화 통신이 제대로 이뤄지는지 확인하기 위해 사용되는 프로토콜.
지난 4월 7일 핀란드의 보안회사 코드노미콘(Codenomicon) 소속 연구진이 오픈SSL에서 발견된 하트블리드 버그를 공개하면서 이슈가 됐다.
DROWN 취약점이란 “Decrypting RSA with Obsolete and Weakened eNcryption: 취약한 구식 암호화법을 통한 RSA 복호화”에서 따온 이름으로, SSLv2취약점을 악용한 교차 프로토콜 공격입니다.
FREAK :프레이크 Factoring attack on RSA-EXPORT Keys : 웹 브라우저의 암호시스템을 허술한 체계로 변경할 수 있도록 하는 취약점. 이 취약점은 SSL, TLS 등 암호화 프로토콜에 영향을 미치며 브라우저와 HTTPS 보안 웹사이트 간의 암호화 수준을 낮추는 버그이다. 암호화가 한번 풀리면 해커들이 비밀번호나 개인 정보를 빼낼 수 있고 잠재적으로 웹사이트 요소를 변경해 광범위한 사이버 공격도 가능하다. 이 취약점은 마이크로소프트와 프랑스 국립 컴퓨터공학연구소(INRIA) 연구진이 발견했다.
취약점 명칭은 Ghost (CVE-2015-0235) 로 명명됐으며, GNU C Library (glibc) 의 호스트네임을 조회하는 gethostbyname() 패밀리의 함수에서 입력값 검증이 제대로 이루어지지 않아 Overflow 를 일으키는 버그를 이용합니다. 이제 gethostbyname()함수는 vulnerable하므로 사용하지 못하게 한다. gethostbyname_r()함수를 사용해야한다.
gethostbyname_r()함수:
struct hostent *gethostbyname_r( const char * name, struct hostent * result, char * buffer, int bufflen, int * h_errnop );
#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#define CANARY "in_the_coal_mine"
struct {
char buffer[1024];
char canary[sizeof(CANARY)];
} temp = { "buffer", CANARY };
int main(void) {
struct hostent resbuf;
struct hostent *result;
int herrno;
int retval;
/*** strlen (name) = size_needed - sizeof (*host_addr) - sizeof (*h_addr_ptrs) - 1; ***/
size_t len = sizeof(temp.buffer) - 16*sizeof(unsigned char) - 2*sizeof(char *) - 1;
char name[sizeof(temp.buffer)];
memset(name, '0', len);
name[len] = '\0';
retval = gethostbyname_r(name, &resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);
if (strcmp(temp.canary, CANARY) != 0) {
puts("vulnerable");
exit(EXIT_SUCCESS);
}
if (retval == ERANGE) {
puts("not vulnerable");
exit(EXIT_SUCCESS);
}
puts("should not happen");
exit(EXIT_FAILURE);
}
2014년 9월 24일 발견
Bash로 해당 명령을 실행했을 때, 그에 대응하는 결과 뿐만 아니라, 다른 결과까지 실행되는 버그이다.
env x='() { :;}; echo vulnerable' bash -c "echo test"
Total Meltdown 취약점은 어떤 프로세스가 매 초당 기가바이트의 속도로 메모리 내용을 읽는 동시에 임의 메모리에 입력도 가능합니다. 해당 취약점을 이용하면, 일반 사용자의 권한으로 실행된 프로세스가 커널엑세스 메모리 공간을 읽고 쓸수 있으며, 메모리를 유출할 수도 있습니다.
7. spectre(CVE-2017-5753 & CVE-2017-5715)
Spectre 취약점은 Intel, ARM 및 AMD 프로세서에 존재하는 취약점으로, 프로세서로 하여금 실행해서는 안되는 코드를 실행하도록 유도하여 다른 어플리케이션 메모리 공간에 존재하는 정보를 유출시킬 수 있는 취약점입니다.
프로세서는 일부 조건 분기, 예를 들어 if else가 성립되지 않는 상황 등에서는 먼저 해당 조건 안에 있는 코드를 먼저 실행하며, 발생 조건이 맞지 않는다면 해당 결과를 버리게 됩니다.
Spectre 취약점은 이러한 특성을 이용한 것입니다. CPU가 분기가 맞는지 맞지 않는지 판단을 하기 전에 분기 내부에 포함되어 있는 코드(즉 공격자가 악의적인 목적으로 작성해놓은 코드)를 실행시킨다면 결과적으로 일부 데이터가 L1 cache에 저장되게 됩니다. 그 후 이 데이터에 접근한 시간을 통하여 어떠한 데이터가 캐시에 저장되었는지 추측한 후, 다시 역순으로 실행을 통해 자신의 메모리 경계선을 넘어 메모리를 읽어올 수 있습니다.
보안이 취약한 홈페이지를 변조하여 이미 알려진 보안 취약점을 공격하는 악성코드를 심어놓는다.
사용자는 어떠한 다운로드나 첨부파일을 열어본적 없지만 감염되게된다.
Flash
ActiveX 는 왜 취약한가.
apache struts2 cve20179805
apache slowloris : 재조립할 때 interval을 늘려서 ddos 함.
http splitting
'보안 공부 > 최신 보안 동향' 카테고리의 다른 글
생체 인증 취약점 (0) | 2019.09.22 |
---|---|
삼성 보안 기술 포럼 2019 후기 (0) | 2019.08.22 |
애플의 iOS와 왓치OS에서 6가지 취약점 발견돼 (0) | 2019.07.31 |
보안사고 최신동향 (0) | 2019.07.30 |
오피스 악성 매크로 빌더 네덜란드에서 체포 (0) | 2019.07.24 |