보안 & 보안
-
블록 암호 운용 방식 (block cipher modes of operation)보안 & 보안 2017. 2. 18. 13:45
블록 암호란?블록 암호(block cipher)란 기밀성있는 정보를 정해진 블록 단위로 암호화 하는 대칭키 암호 시스템입니다. 만약 암호화하려는 정보가 블록 길이보다 길 경우에는 특정한 운용 모드가 사용됩니다.(예, ECB, CBC, OFB, CFB, CTR)스트림 암호란?스트림 암호(stream cipher)는 대칭 키 암호의 구조 중 하나로, 유사난수를 연속적(스트림)으로 생성하여 암호화하려는 자료와 결합하는 구조를 가집니다. 일반적인 스트림 암호는 유사난수를 1비트 단위로 생성하고, 생성된 값과 암호화하려는 각 값을 XOR하여 1비트의 암호화된 자료를 얻습니다. 즉 키의 길이가 유동적입니다. 스트림 암호는 일회용 난수표(OTP)를 유사난수로 대체한 것으로 볼 수 있습니다. 스트림 암호는 하드웨어 구..
-
CSRF란?보안 & 보안 2017. 1. 16. 20:40
CSRF란?사이트 간 요청 위조(Cross-site Request Forgery)웹 어플리케이션 취약점 중 하나로 사용자가 자신의 의지와 무관하게 공격자가 의도한 행동을 하여 특정 웹페이지를 보안에 취약하게 한다거나 수정, 삭제 등의 작업을 하게 만드는 공격방법을 의미합니다. 2008년에 발생한 옥션의 개인정보 유출사건에서도 관리자 계정을 탈취하는데 이 방법이 사용되었습니다. 공격의 난이도가 높지 않아 널리 사용되는 방법 중 하나입니다.공격방법이러한 공격을 하기 위하여 해커는 우선 공격을 할 사이트를 먼저 분석합니다. 예를 들어, 나무위키의 경우에 토론은 namu.wiki/topic/ 이라고 시작하며 뒤에 숫자가 붙는 형식인데 이 뒤의 숫자에 패턴이 있습니다.(실제론 토론이 개설된 순서대로 붙는 일련번호..
-
XSS공격이란보안 & 보안 2017. 1. 16. 20:27
XSS공격이란XSS(Cross-site Scripting)는 웹 상에서 가장 기초적인 취약점 공격 방법의 일종으로, 악의적인 사용자가 공격하려는 사이트에 스크립트를 넣는 기법을 말합니다. 공격에 성공하면 사이트에 접속한 사용자는 삽입된 코드를 실행하게 되며, 보통 의도치 않은 행동을 수행시키거나 쿠키나 세션 토큰 등의 민감한 정보를 탈취합니다. 크로스 사이트 스크립팅이란 이름 답게, 자바스크립트를 사용하여 공격하는 경우가 많습니다. 공격 방법이 단순하고 가장 기초적이지만, 많은 웹사이트들이 XSS에 대한 방어 조치를 해두지 않아 공격을 받는 경우가 많습니다. 여러 사용자가 접근 가능한 게시판 등에 코드를 삽입하는 경우도 많으며, 경우에 따라서는 메일과 같은 매체를 통해서도 전파됩니다. 물론, HTML을 ..
-
Spoofing? Sniffing?보안 & 보안 2016. 11. 9. 15:13
스푸핑(Spoofing)이란?자기 자신의 식별 정보를 속여 다른 대상 시스템을 공격하는 기법입니다. 네트워크 상의 공격자는 TCP/IP 프로토콜 상의 취약성을 기반으로 해킹 시도시 자신의 시스템 정보(IP 주소, DNS 이름, Mac 주소 등)를 위장하여 감춤으로써 역추적이 어렵게 만듭니다. 이러한 스푸핑 공격은 패킷 스니퍼링이나 서비스 거부 공격, 세션 하이재킹(Session Hijacking)등의 다른 여러가지 공격을 수행 가능하게 합니다. 스푸핑을 그냥 사용하기 보단 스니핑을 사용하기 위한 준비단계로 많이 사용됩니다.스니핑(Sniffing)이란?사전적인 의미로 스니핑(Sniffing)이란 ‘코를 킁킁거리다’, ‘냄새를 맡다’ 등의 뜻이 있습니다. 사전적인 의미와 같이 해킹 기법으로서 스니핑은 네트워..
-
SandBox란?보안 & 보안 2016. 7. 28. 21:11
샌드박스란샌드박스는 외부로부터 받은 파일을 바로 실행하지 않고 보호된 영역에서 실행시켜 봄으로써 외부로부터 들어오는 파일과 프로그램이 내부 시스템에 악영향을 주는 것을 방지하는 기술입니다.이는 외부로부터 유입되는 악성코드로부터 시스템 내 파일이나 프로세스를 보호하는 데 사용합니다. 샌드박스에서 실행되어 안전하다고 검증받은 파일이나 작업은 시스템 변경이 가능하지만, 허용하지 않은 경우에는 변경할 수 없습니다. 기술적으로 설명하면, 외부로부터 들어온 프로그램이나 실행 파일을 가상화 내부에서 시험적으로 동작시켜봄으로써 가상화 밖으로는 영향을 주지 않습니다. 한 마디로 가상화 기술을 악성행위나 악성코드 감지 시스템에 적용한, 보안 가상화의 일종입니다. 가상화를 통한 보안은 상당히 많은 영역에서 사용되고 있습니다..
-
AES와 SHA 차이보안 & 보안 2016. 7. 21. 09:48
이것저것 알아보다 보니 SHA와 AES의 차이가 무엇인지 궁금해졌습니다.. 보통 평문이나 암호화를 해야하는 부분은 AES를 사용하고 서버에서 인증서의 암호화가 필요한 부분은 SHA를 사용해 이 개념을 확실히 하기 위해 조사를 했습니다. Encryption(암호화)와 Hash(해쉬)의 차이암호화는 암호화 알고리즘을 이용하고, 인증은 해쉬함수를 이용하여 Verification Data를 만들어 원문에 태그(Tag)를 붙여서 전송하므로 해쉬함수를 이용합니다. 암호화 알고리즘과 해쉬 함수의 동작 방식을 이해하면, 암호화와 인증의 차이를 이해할 수 있습니다. 위의 왼쪽 그림은 암호화 알고리즘의 동작방식을 설명한 것이며, 암호화는 기본적으로 양방향 통신을 전제로 하므로 암호화와 복호화가 가능해야 합니다. 복호화되지..
-
AES보안 & 보안 2016. 7. 21. 09:33
Advanced Encryption Standard, 줄여서 AES라고 흔히 불린다. 높은 안전성과 속도로 인해 인기를 얻어 전세계적으로 많이 사용되고 있다. AES를 위한 암호화 알고리즘은 레인달 알고리즘이 뽑혔다. 이후 2001년 2월 28일, 기밀문서를 암호화 할 때, DES를 대체하여 많이 사용되기 시작되었다.알고리즘 AES암호화에 사용되는 단계들이다.S-BoxShiftRowsMixColumnsAddRoundKey키 스케쥴다음, 가장 처음에 AddRoundKey로 CipherText를 암호화 시킨다. 그 다음, 위에 4 알고리즘을 CipherText에 적용한다. 비트크기에 따라 반복하는 수가 다르다. AES-128같은 경우는 9번, AES-192는 11번, 그리고 AES-256은 13번 반복한다...
-
Man In The Middle Attack보안 & 보안 2016. 7. 19. 15:20
Man In The Middle Attack (중간자 공격, MITM) 이란?중간자 공격(man in the middle attack, MITM)은 네트워크 통신을 조작하여 통신 내용을 도청하거나 조작하는 공격 기법이다. 중간자 공격은 통신을 연결하는 두 사람 사이에 중간자가 침입하여, 두 사람은 상대방에게 연결했다고 생각하지만 실제로는 두 사람은 중간자에게 연결되어 있으며 중간자가 한쪽에서 전달된 정보를 도청 및 조작한 후 다른 쪽으로 전달한다. 많은 암호 프로토콜은 중간자 공격을 막기 위하여 인증을 사용한다. 예를 들어, TLS/SSL 프로토콜은 공개 키를 기반으로 한 인증을 사용한다.예제갑이 을과 통신하려고 하는 상황에서, 병은 그 사이에 끼어들어 을에게 잘못된 메시지를 전달한다. 먼저, 갑이 을에..
-
SQL Injection보안 & 보안 2016. 7. 6. 17:24
SQL Injection개요SQL 인젝션 (SQL 삽입, SQL 주입으로도 불린다) 은 코드 인젝션의 한 기법으로 클라이언트의 입력값을 조작하여 서버의 데이터베이스를 공격할 수 있는 공격방식을 말한다. 주로 사용자가 입력한 데이터를 제대로 필터링, 이스케이핑하지 못했을 경우에 발생한다. 공격이 쉬운데 비해 파괴력이 어마어마 하기 때문에 시큐어 코딩을 하는 개발자라면 가장 먼저 배우게 되는 내용이다. 이러한 injection 계열의 취약점들은 테스트를 통해 발견하기는 힘들지만 스캐닝 툴이나 코드 검증절차를 거치면 보통 쉽게 발견되기 때문에 탐지하기는 쉬운 편이다. 보안회사 Imperva가 2012년에 발표한 보고서에 따르면 월 평균 4회 가량의 SQL 인젝션 공격이 일어난다고 한다. OWASP에서도 수년동..
-
SHA보안 & 보안 2016. 7. 6. 17:22
SHA란?SHA(Secure Hash Algorithm, 안전한 해시 알고리즘) 함수들은 서로 관련된 암호학적 해시 함수들의 모음이다. 이들 함수는 미국 국가안보국(NSA)이 1993년에 처음으로 설계했으며 미국 국가 표준으로 지정되었다. SHA 함수군에 속하는 최초의 함수는 공식적으로 SHA라고 불리지만, 나중에 설계된 함수들과 구별하기 위하여 SHA-0이라고도 불린다. 2년 후 SHA-0의 변형인 SHA-1이 발표되었으며, 그 후에 4종류의 변형, 즉 SHA-224, SHA-256, SHA-384, SHA-512가 더 발표되었다. 이들을 통칭해서 SHA-2라고 하기도 한다.SHA-1은 SHA 함수들 중 가장 많이 쓰이며, TLS, SSL, PGP, SSH, IPSec 등 많은 보안 프로토콜과 프로그램..