티스토리 뷰
https://book.naver.com/bookdb/book_detail.nhn?bid=21380986
웹은 상당수의 복잡한 보안 문제를 제기한다. 보안 위협은 대체로 세가지 범주로 나뉜다.
이번 장에서는 보안을 위협하는 세가지 범주의 공격에 대해서 알아보기로 합시다. 방어책은 다음장에서 다루어 진다.
목차
- 클라이언트 공격
- 스팸
- 피싱 공격
- 스파이웨어
- 좀비, 봇
- 키 로거
- 랜섬웨어
- 서버 공격
- SQL 주입 공격
- DoS
- 정보 공격
- 중간자 공격
- 대안책
1. 클라이언트 공격
1 - 1 스팸
스팸 (spam) : 원하지 않는 상품과 서비스를 권하는 성가신 메일
- 스팸이 흔한 이유 = 거의 무료로 보낼 수 있기 때문 => 수백만명의 수신자 중 극히 일부만 응답해도 이득
- 스팸필터 : 알려진 패턴, 이상한 이름, 기묘한 철자, 스팸업자가 선호하는 주소 등을 찾기 위해 텍스트를 분석
- 스팸은 출처가 꼭꼭 숨겨져 있어서 원천적으로 중단시키기 어렵다.
- 스팸에 해킹된 개인 컴퓨터는 보안에 허점이 생기며 악성코드를 설치하는 공격에 취약해진다.
*악성코드 : 시스템을 손상시키거나 작동을 방해하려는 악의적인 소프트웨어
스팸필터 참고 사이트 : https://m.dongascience.com/news.php?idx=14439
1 - 2 피싱 공격
도용에 사용할 수 있는 정보를 수신자가 자발적으로 넘겨주도록 설득하는 방법
대부분 피싱 공격은 교묘하다. 표면적으로는 합법적인 기관 또는 친구나 동료가 보낸 것 같은 메일이 배달되어 웹사이트를 방문하거나 문서를 읽거나 어떤 자격 증명을 확인하도록 요청한다. -> 응할 시 컴퓨터에 악성코드를 설치하거나 정보를 얻는다.
*소셜 엔지니어링
시스템에 침입하는데, 기술적인 해킹 기법을 사용하는 대신 사람의 심리를 악용해 시스템 또는 데이터, 건물에 대한 출입 권한을 확보하는 기술로, 사회공학적 공격이라고도 불린다.
* 스피어 피싱
정확한 표적을 공격하는 것이 스피어 피싱 (소셜 엔지니어링의 일부)
공격자가 접근 권한이 없는 말단 직원의 정보를 기반으로 접근 권한이 있는 고위 직원까지 노릴 수 있다는 점이 무서운 부분이다.
다음은 스피어 피싱의 실사례이다.
2020년 7월 트위터는 난처한 공격을 겪었다. 빌 게이츠, 일론 머스크 같은 많은 유명인의 계정에서 '비트코인으로 1,000달러만큼 송금하면 2,000달러를 도로 송금해 드립니다.' 와 같은 분류의 트윗을 보내는 일이 생겼다. 트위터가 해당 계정을 차단하기 전까지 수백명의 사람이 실제로 그렇게 한 것을 보인다. 사건 이후 트위터는 다음과 같이 발표했다.
"2020년 7월 15일에 일어난 소셜 엔지니어링은 휴대전화 스피어 피싱 공격으로 몇 명의 직원을 노렸습니다. 공격이 성공하려면 공격자가 트위터 내부 네트워크에 접근해야 할 뿐만 아니라, 내부 계정 관리 툴에 접근할 수 있는 특정 직원의 자격 증명 정보를 얻어야만 했습니다. 처음에 표적이 된 직원 모두가 계정 관리 툴 접근 권한이 있지는 않았지만, 공격자는 그들의 자격 증명 정보를 사용하여 내부 시스템에 접근했고, 우리 프로세스에 대한 정보를 획들했습니다. 공격자는 이 정보를 이용하여 계정 관리 툴에 접근 할 수 있는 직원을 대상으로 공격을 수행할 수 있었습니다."
여기서 공격자가 내부 계정 관리 툴에 접근 권한이 없는 직원의 정보를 기반으로 실제로 접근 권한이 있는 직원까지 노릴 수 있다는 점에 주목하라.
공격 배후에 있는 주범은 재빨리 밝혀졌는데, 플로리다에 사는 17세 소년이었다. 다른 두명의 젊은 공범도 기소되었다.
1 - 3 스파이웨어
적절한 사용자의 동의 없이 컴퓨터에 몰래 설치되어, 중요한 개인정보 등을 수집하고 공격자의 서버로 전송한다.
대부분의 백신 프로그램에서 방어하고 치료할 수 있다.
특징 및 피해
-
컴퓨터 내에 저장된 개인정보 수집 및 전송
-
사용자의 행동 감시 및 전송
-
파일 삭제 및 변조
-
실시간 서버와 연결되어 악성코드 설치
-
간혹 해킹과 연계되거나 이른바 '좀비 PC'의 원인
상업적인 스누핑(설치된 소프트 웨어의 업데이트된 버젼이 있는지 자동 확인)도 있지만 강제가 된다면 문제가 생기기도 한다.
*스누핑(Snooping)은 스니핑과 유사한 단어로서, 네트워크 상의 정보를 염탐하여 불법적으로 얻는 것을 의미한다.
1 - 4 좀비, 봇
좀비 : 인터넷에 연결되어 잠에서 깨어나 스팸 메일 전송 같은 적대적 행위를 수행하라는 명령을 받을 때 까지 기다리는 프로그램( 이러한 프로그램 = bot)
봇넷(botnet)은 인터넷에 연결되어 있으면서 위해를 입은 여러 컴퓨터들의 집합을 가리킨다. 사이버 범죄자가 트로이 목마, 또 이 밖의 악성 소프트웨어를 이용해 빼앗은 다수의 좀비 컴퓨터로 구성되는 네트워크라고 볼 수 있다.
1 - 5 키 로거
소프트웨어 키 로거는 시스템 애플리케이션과 유사한 exe 파일 이름으로 메모리에 상주하며, 자판이나 마우스 입력를 읽어 문서 파일로 저장하거나 주기적으로 전송하는 프로그램이다. -> 암호화로는 이를 막는데 도움이 되지 않는다.
하드웨어 타입 키로거
하드웨어적인 방식이므로 백신 프로그램에서 잡을 수 없다. 하드웨어 키로거는 키보드 입력을 메모리에 기록하며 특정 문자열을 입력해야만 이동식 디스크로 인식하여 볼 수 있다. 여러모로 소프트웨어 방식보다 무서운 장치이다.
키로거 : https://namu.wiki/w/%ED%82%A4%EB%A1%9C%EA%B1%B0
1 - 6 랜섬웨어
몸값을 뜻하는 Ransom과 악성 코드를 뜻하는 Malware의 합성어이며, 사용자의 동의 없이 시스템에 설치되어서 무단으로 사용자의 파일을 모두 암호화하여 인질로 잡고 금전을 요구하는 악성 프로그램을 말한다.
scareware : 가짜 안티바이러스, 겉보기엔 합법적으로 판매되는 보안 프로그램과 유사하지만 실제로는 보안 기능이 없이 오직 금전적인 이득을 목적으로 하는 소프트웨어를 말한다.
다음은 저자가 알려준 랜섬웨어 공격의 실사례이다.
2020년 6월에 캘리포니아 대학 샌프란시슼코UCSF 의과대학이 랜섬웨어 공격을 받았고, 다음과 같은 성명을 발표했다.
"암호화된 데이터는 우리가 공익을 제공하는 대학으로서 추구하는 학술 연구에 중요한 자료였습니다. 그래서 우리는 데이터 암호화를 해제하는 툴을 받고 그들이 획득한 데이터를 돌려받는 조건으로 악성코드 공격 배후자들에게 요구받은 금액의 일부인 약 114만 달러를 지불하기로 어려운 결정을 내렸습니다."
랜섬웨어 : https://namu.wiki/w/%EB%9E%9C%EC%84%AC%EC%9B%A8%EC%96%B4
2. 서버 공격
서버 공격에 있어서는 할 수 있는 일이 많지 않다는 점에서 고객의 문제는 아니다.
서버는 인가되지 않은 정보를 유출하거나 무단 접근을 허용하지 않도록 프로그래밍되고 설정되어야 한다.
데이터베이스의 지원을 받는데 데이터베이스에는 SQL 표준 인터페이스를 사용해서 접근한다.
2 - 1 SQL 주입 공격
사용자 접근을 신중하게 제한하지 않으면 데이터베이스 구조를 드러내고 인가되지 않은 정보를 추출하며 심지어 공격자의 코드를 서버에서 실행하기 위한 쿼리를 제출한다.
공격자의 코드가 전체 시스템에 대한 통제권을 획득할 가능성도 있다.
공격이 비교적 쉬운편이라 그만큼 방어책도 잘 알려져 있지만 자주 발생한다.
이렇게 시스템의 통제권이 빼앗겨 해킹 당하는 경우 피해를 입는 범위에는 거의 제한이 없다.
2017년 3월 미국의 3대 신용보고기관 중 하나인 에퀴팩스(Equifax)에서 1억 5천만 명의 개인 식별 정보 수 테라바이트가 외부로 복사됐다. 신용보고기관에서는 데이터베이스에 민감한 정보를 대량으로 보유하고 있으므로 이 유출 사고는 심각한 문제가 될 수 있었다. 에퀴팩스는 보안 절차 면에서 태만했는데 알려진 취약점에 대비해서 시스템을 최신 상태로 유지하지 않았다.
2019년 12월 미국 편의점 체인 와와(Wawa)에서 약 3천만 건에 달하는 대량의 신용카드 정보가 판매 단말기에 침투한 악성코드를 통해 유출됐다고 발표했다. 도용된 카드 정보는 다크 웹에 판매용으로 올라왔다.
2020 2월에는 주로 법 집행 기관에 얼굴 인식 소프트웨어를 제공하는 클리어뷰AI(Clearview AI) 가 공격받았고, 고객 데이터베이스가 유출되었다. 회사는 고객 데이터베이스 이외에 사진과 검색 기록을 포함한 다른 정보는 전혀 유출되지 않았다고 주장했지만, 당시 뉴스 기사를 보면 사진도 유출되었음을 시사한다.
*SQL (Structed Query Language): 관계형 데이터베이스 관리 시스템의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다.
SQL 주입 : https://noirstar.tistory.com/264
2 - 2 DoS
DoS : 트래픽 용량만으로 사이트를 마비시키기 위해 대량의 트래픽이 사이트로 향하게 만든다. (봇넷으로 조정된다)
DDoS(Distributed Denial of Service)공격은 공격하는 대상의 컴퓨터에 침투해서 자료를 삭제하거나 훔치거나 하는 것이 아니라, 공격대상에게 대량의 트래픽을 유발시킴으로써 시스템이 과부하에 빠지게 만들고, 정당한 다른 신호들을 받지 못하게 방해하는 작용만 하게 된다.
DDoS(디도스) 공격의 문제점은, 공격에 이용된 '좀비PC'들이 악성코드나 해킹툴의 흔적을 감추기 위해 스스로 하드디스크를 손상시켜 사용자의 컴퓨터가 동작 불능 상태가 되어버리게 만든다는 것이다.
2020년 2월 아마존 AWS 클라우드 서비스에서 역대 최고 규모였다는 DDoS에 성공적으로 대처했는데, 최대 트래픽 속도가 2.3Tbps였다고 한다.
* 트래픽(traffic)은 이름 그대로 교통량, 인터넷을 통해 주고받는 자료의 양이라고 보면 된다.
* Tera = 10 ^ 12
DDoS : https://jwprogramming.tistory.com/181
3. 정보 공격
전송중인 정보, 무선 통신을 스누핑하거나 NSA가 광케이블 상의 모든 트래픽을 탈취하는 행위
3 - 1 중간자 공격
메세지를 가로채서 바꾼 다음, 원래출처에서 바로 온 것처럼 수신자에게 보내는 공격이다.
3 - 2 대안들
1. HTTPS
TCP/IP 트래픽을 양방향으로 암호화한다. 도청자가 내용을 읽거나 위장을하는 일이 불가능해 진다.
(아직 광범위하게 적용된 것은 아님)
*HTTPS(Hypertext Transfer Protocol Secure)란 사용자 컴퓨터와 방문한 사이트 간에 전송되는 사용자 데이터의 무결성과 기밀성을 유지할 수 있게 해주는 인터넷 통신 프로토콜입니다.
*TCP/IP : TCP(Transmission Control Protocol)과 IP(Internet Protocol)을 합친 용어로
전송계층인 TCP와 네트워크 계층의 IP 사이의 통신 표준 및 네트워크의 라우팅 및 상호연결에 대한 자세한 규칙을 지정하는
프로토콜(통신규약) 스위트(Suite 모음)이다.
2. VPN(Virtual Private Network 가상사설망)
두 컴퓨터 간에 암호화된 통신 경로를 설정하여 일반적으로는 정보 흐름을 양방향으로 안전하게 보호한다.
신뢰할 수 없는 환경에서 일할 수있게 하고자 VPN 자주 이용한다.
3. 보안 메시징 앱
사용자 간에 암호화된 음성, 비디오, 텍스트 통신을 제공한다.
서비스 제공 업체에는 없고 종단점(맨 끝이 되는 지점)에만 존재하는 키를 사용해서 메시지가 발신지에서 암호화되고, 수신지에서 복호화하는 것으로 중간자 공격이 가해질 수 없다.
예) 시그널, 왓츠앱, 아이메시지, 페이스북 메신저
'프로그래밍 > CS 지식' 카테고리의 다른 글
[Hardware] #7 프로세서와 계산기의 다른점, 모형 컴퓨터로 더하기 프로그램 만들기 (0) | 2022.05.29 |
---|---|
[Hardware] #6 비트모아 데이터 (0) | 2022.05.29 |
[Hardware] #5 "0과 1"의 세계 (0) | 2022.05.29 |
[Hardware] #4 아날로그와 디지털 (0) | 2022.05.29 |
[Hardware] #3 프로세서 칩 (0) | 2022.05.29 |
- Total
- Today
- Yesterday
- 항해99추천비추천
- ~ ^
- aspect-ratio
- 프리렌더링확인법
- && 셸 명령어
- text input pattern
- D 플래그
- float 레이아웃
- Prittier
- getServerSideProps
- getStaticPaths
- 원티드 FE 프리온보딩 챌린지
- 틸드와 캐럿
- fs모듈 넥스트
- reactAPI
- 타입스크립트 DT
- tilde caret
- 타입스크립트 장점
- is()
- grid flex
- 원티드 프리온보딩 프론트엔드 챌린지 3일차
- 원티드 프리온보딩 FE 챌린지
- 프리온보딩 프론트엔드 챌린지 3월
- nvm경로 오류
- nvm 설치순서
- 형제 요소 선택자
- 항해99프론트후기
- 항해99프론트
- 원티드 3월 프론트엔드 챌린지
- 부트캠프항해
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |