본문 바로가기

보안해킹12

버퍼 오버플로 & 포맷 스트링 공격 버퍼 오버플로 & 포맷 스트링 공격 버퍼 오버플로는 프로그램이 실행될 때 입력받는 값이 버퍼를 가득 채우다 못해 넘쳐흘러 버퍼 이후의 공간을 침범하는 현상을 말한다. 메모리를 다루는 데에 오류가 발생하여 잘못된 동작을 하는 프로그램 취약점이다. 데이터의 길이에 대한 불명확한 정의를 악용한 덮어쓰기로 인해 발생한다. 컴퓨터 보안과 프로그래밍에서 이는 프로세스가 데이터를 버퍼에 저장할 때 프로그래머가 지정한 곳 바깥에 저장하여 벗어난 데이터는 인접 메모리를 덮어 쓰게 되는데 손상 받은 데이터가 중요한 데이터일 경우 프로그램에 큰 영향을 미치게 된다. 버퍼 오버플로를 일으키는 기본적인 예시는 문자열에 할당된 메모리 용량보다 더 큰 공간을 할당했을 때이다. 예를 들면 8바이트 문자열을 넣을 수 있는 버퍼가 존재.. 2017. 4. 29.
블록체인 블록체인 블록체인은 첫 번째 암호 화폐였던 비트코인에서 처음 나타난 개념으로, 모든 암호 화폐는 각각의 블록체인을 가지고 있다. 블록체인은 공공 거래 장부이며 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다. 분산 데이터베이스의 한 형태로 지속적으로 성장하는 데이터 기록 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안되었다. 거래 장부는 금융 거래에서 핵심적인 요소이다. 돈이 오고간 내역을 기록하기 때문에 이를 바탕으로 금융거래가 이루어진다. 이런 거래 장부가 인터넷을 통해 사용되면 안전하게 보관하는 일이 매우 중요하게 된다. 거래 장부를 조작함으로써 직접적으로 돈을 뺏을 수 있기 때문이다. 예전에는 거래 장부를 서버에 저장한 후 다양한 보안 장비와 프로그램을 설치하고 보.. 2017. 4. 28.
FIDO (생체 인식) FIDO (생체 인식) 요즘 스마트폰을 사용하면서 홍채 인식과 지문 인식을 통해 잠금 화면을 해제하는 모습을 많이 볼 수 있다. 비밀번호를 사용하는 것보다 매우 편리하게 사용할 수 있다. 비밀번호를 사용하면 오래된 번호는 잊어버릴 수도 있다. 비밀번호 찾기를 통해 비밀번호를 찾지만 또 시간이 지나면 잊어버릴 수도 있다. 매우 귀찮은 일이다. 그래서 절대 잊을 수도 없고 타자를 사용하지 않고 쉽게 할 수 있도록 생체 인증을 만들었다. 그게 바로 FIDO 인증 프레임워크이다. FIDO(Fast Identity Online)는 아이디와 비밀번호 조합 대신 지문, 홍채, 얼굴 인식, 목소리, 정맥 등을 활용한 새로운 인증 시스템이다. 사용자를 증명할 수 있고 사용자가 사용하기 편한 도구가 바로 사용자 그 자체의.. 2017. 4. 25.
SQL 인젝션 & XSS SQL 인젝션 & XSS SQL 인젝션은 코드 인젝션의 한 기법으로 클라이언트의 입력 값을 조작하여 서버의 데이터베이스를 공격할 수 있는 공격방식을 말한다. 글로벌 콘텐츠 전송 서비스 기업 씨디네트윅스가 발표한 2016년 4분기 웹 공격 분석 보고서에 따르면, 2016년 4분기 웹 공격 취약점 유형에서 26%가 SQL 인젝션으로 나타날 정도로 웹 공격에서 흔하게 발생함을 나타내고 있다. 또한 OWASP에 의한 취약점 Top 10 중에서도 보안 위협 1순위로 SQL 인젝션이 있을 정도로 웹 분야에서 취약적이 부분으로 들어나고 있다. SQL이라고 하는 것은 데이터베이스를 만들고 유지하는 데 사용하는 프로그래밍 언어로 DB를 구축하고 조작하기 위해 사용하는 명령어이다. SQL 질의문을 통해 데이터를 정의, 조.. 2017. 4. 24.
세션 하이재킹 공격 & 부채널 공격 세션 하이재킹 공격 & 부채널 공격 세션 하이재킹 공격은 두 시스템 간 연결이 활성화된 상태, 즉 로그인된 상태를 가로채는 것을 말한다. 서버와 클라이언트가 TCP를 이용해서 통신하고 있을 때, RST 패킷을 보내 일시적으로 TCP 세션을 끊고 시퀀스 넘버를 새로 생성해 세션을 빼앗아 인증을 회피하는 공격이다. 세션 하이재킹은 세션 가로채기라고 한다. 세션이 사용자와 컴퓨터, 또는 두 대의 컴퓨터 간의 활성화된 상태를 나타낸다. 가장 쉬운 세션 하이재킹은 누군가 작업을 하다가 잠시 자리를 비운 PC를 몰래 사용해 원하는 작업을 하는 것이다. TCP 세션 하이재킹은 서버와 클라이언트가 통신할 때 TCP 시퀀스 넘버를 제어하는 데 문제점이 있음을 알고 공격하는 것이다. TCP 세션 하이재킹은 Non-Blin.. 2017. 4. 23.
허니팟 & 허니넷 허니팟 & 허니넷 허니팟은 간단히 말해 해커를 잡는 덫이다. 즉 해커를 잡는 유혹의 꿀단지라는 의미를 가진다. 해커의 공격에 대응할 수 있는 시간을 벌고 해커의 움직임을 면밀히 파악함으로써 사이버 테러를 방지하는 기술이다. 취약점이 많아서 소스에 쉽게 접근할 수 있는 것처럼 보이는 유인 시스템을 설치하는 것이다. 유인 시스템은 기업의 제품 서버 시스템과 유사한 방법으로 설치되어야 하고 수많은 가짜 파일, 디렉토리, 진자처럼 보일 수 있는 다른 정보들이 저장되어야한다. 허니팟을 이용하면 해커들이 허니팟으로 들어온 공격에 대한 정보도 모을 수 있다. 이상적으로 해커가 진자 자산을 공격하기 전에 허니팟으로 해커를 함정에 빠뜨린 것뿐만 아니라 해커의 공격과 취약점을 알 수도 있다. 그러면 허니팟은 어떻게 작동하.. 2017. 4. 22.
OWASP 및 모바일 OWASP OWASP 및 모바일 OWASP OWASP는 The Open Web Application Security Project의 약자로 오픈 소스 웹 애플리케이션 보안 프로젝트이다. 주로 웹에 관한 정보 노출, 악성 파일 및 스크립트, 보안 취약점 등을 연구하며, 웹 애플리케이션의 취약점 중에서 빈도가 많이 발생하고, 보안상 영향을 크게 줄 수 있는 것들의 10대 취약점들을 발표한다. 3년 정도를 거치면서 10대 취약점들을 변경해 나가면서 적절한 정보를 제공하고자 한다. OWASP는 무상으로 어플리케이션 보안 도구와 표준, 보안성 시험, 안전한 코드 개발 등을 지원하고 있다. 상업적인 목적이나 이윤 압박이 없기 때문에, 어플리케이션 보안에 대해 공정하고, 실질적이고, 효율적인 정보를 제공할 수 있게 한다. 현재.. 2017. 4. 20.
스니핑 공격 & 스푸핑 공격 스니핑 공격 & 스푸핑 공격 스니핑 공격은 스니퍼를 이용하여 네트워크상의 데이터를 도청하는 행위를 말한다. 스니퍼란 컴퓨터 네트워크상에 흘러 다니는 트래픽을 엿듣는 도청장치라고 할 수 있다. 스니핑 공격을 수동적 공격이라고 말하는데 공격할 때 아무 것도 하지 않고 조용히 있는 것만으로도 충분하기 때문이다. 드라마에서 주인공이 문 앞에서 다른 이의 대화를 엿듣는 것이나 도청하는 것 역시 스니핑 공격의 일종이다. 컴퓨터 내에서의 스니핑 공격은 일반적으로 작동하는 IP 필터링과 MAC 주소 필터링을 수행하지 않고, 랜 카드로 들어오는 전기 신호를 모두 읽어 들여 다른 이의 패킷을 관찰하여 정보를 유출시키는 것을 의미한다. LAN 상에서 개별 호스트를 구별하기 위한 방법으로 이더넷 인터페이스는 MAC 주소를 갖.. 2017. 4. 19.
DDos & DRDos DDos & DRDos 수강 신청이나 유명한 연예인의 콘서트 티켓을 예매하려고 들어가면 서버가 마비되는 현상을 종종 볼 수 있다. 물론 평상시에는 잘 돌아가는 서버이나 한 순간에 접속자가 많이 몰리게 되면 서버가 수많은 접속자를 관리하지 못하고 터져버리는 것이다. 물론 이러한 상황은 악의적인 상황이 아니므로 문제가 되는 것은 아니다. 물론 이 때문에 실패를 한 사람은 문제가 되겠지만 말이다. 하지만 위와 같은 서버 마비를 일부로 시키는 방법이 있다. 그것이 바로 분산 서비스 거부 공격인 DDos라고 할 수 있다. 인터넷 상에서 사이트 공격을 하는 방법 중 하나로 사이버테러의 대표적인 예라고 할 수 있다. DDos라는 방식을 사용하기 위해서 좀비 PC가 필요하다. 유포한 악성코드를 통해서 PC들을 유사시에.. 2017. 4. 18.
멀버타이징 멀버타이징 우리가 인터넷을 사용이 점차 늘어가면서 다양한 기업들이 인터넷을 통해 광고를 진행하고 있다. 또한 재택근무의 형태로 광고를 기재해주는 역할을 하는 직종도 늘어나고 있다. 하지만 이러한 광고가 우리가 사용하는 컴퓨터에 엄청나게 큰 영향을 주는 악성 코드일 수 있다. 멀버타이징(Malvertising)은 악성 프로그램을 뜻하는 멀웨어(Malware) 혹은 악의적인 이라는 뜻의 의미하는 멀리셔스(Malicious)와 광고 활동을 뜻하는 애드버타이징(Advertising)의 합성어이다. 멀버타이징은 광고 서비스의 정상적인 네트워크를 이용하여 악성코드를 유포 및 감염시키는 방법을 말한다. 우리가 특정 블로그에 들어가면 다양한 광고 서비스를 볼 수 있다. 그러한 광고들 중에 악성 코드를 유포하는 사람들이.. 2017. 4. 17.