2월, 2019의 게시물 표시

WinRAR 취약점 이용한 악성코드 발견

얼마 전, 20년 가까이 있어 왔던 WinRAR의 취약점이 패치됐다. .ace라는 낡은 압축파일 형식을 다루는 라이브러리에 문제가 있었다. 특별하게 조작된 .ace 파일을 풀면, 임의의 파일을 사용자가 지정하지 않은 임의의 위치에 생성하게 된다. 윈라 측은 에이스 파일에 대한 지원을 삭제함으로써 문제를 해결했다. 해커는 악의적인 .ace 파일의 확장명을 .rar로 바꾼 후, 피해자가 WinRAR에서 열도록 유도하기만 하면 된다. 그런데 스팸 메일의 첨부 파일로 악성 rar 파일을 유포하는 것이 발견됐다. 이 악성 파일은 백도어를 시작프로그램 폴더에 풀어 놓아서, 부팅 시마다 자동 실행되게 했다. 시작프로그램 폴더는 보호된 폴더이므로, UAC가 활성화된 경우에는 에러를 일으킨다. 그러나 UAC가 꺼져 있거나, WinRAR를 관리자 권한으로 실행한 경우에는 백도어가 설치된다. 백도어는 원격으로 피해 시스템을 제어하고, 다른 악성코드를 다운로드하는 역할을 한다. 이번 일에서 우리가 배울 점은, 모든 프로그램의 업데이트에 신경을 써야 한다는 것이다. 보통 이런 유틸리티의 업데이트에는 소홀하기 쉽다. 그러나 이런 것을 통해서도 해킹 당할 수 있다는 것을 보여줬다. 참고 자료 Malspam Exploits WinRAR ACE Vulnerability to Install a Backdoor  

NVIDIA 그래픽 드라이버 취약점 패치

엔비디아는 2월 보안 업데이트를 통해, 그래픽 드라이버의 해킹 취약점 8개를 패치했다. 이들은 임의 코드 실행, 권한 상승, 서비스 거부, 시스템 정보 노출 등을 가능케 하는 것들이다. 인터넷을 통해 원격으로 악용할 수는 없고, 기기에 물리적으로 접근할 수 있는 로컬 사용자만이 악용할 수 있는 로컬 취약점이다. 그러나 원격에서 악성코드를 통해 악용할 수는 있다. 이처럼 지금은 remote 취약점이냐 local 취약점이냐 하는 것이 별 의미가 없다. 다만 로컬 취약점 악용은 한 단계를 더 거쳐야 하니, 원격 취약점보다 조금 덜 위험한 것은 사실이다. 이들 취약점은 소프트웨어 업데이트만으로 해결되지만, 하나는 추가 절차를 수행해야 한다. CVE-2018-6260은 부채널 공격(side-channel attack)에 대한 취약점인데, 엔비디아 제어판의 GPU Performance Counters 관리 항목에 대한 도움말을 참고하여 조치를 취해야 한다. 다만 이것은 실제 위험도가 낮은 편이다. 참고 자료 NVIDIA Patches Security Issues in GPU Display Driver for Windows, Linux  

8글자 암호는 2시간반 만에 풀린다

NTLM hash 취약 Windows NTLM으로 hash된 8글자 패스워드는 2.5시간이면 크랙될 수 있는 것으로 드러났다. 암호 크래킹 툴인 HashCat 개발자는 2.14일 트위터를 통해 이 사실을 알렸다. 사용된 장비는 Nvidia RTX 2080Ti GPU를 8개 장착했다. 이 정도 장비를 구입하려면 약 1만 달러 정도가 든다. 한편 25달러를 주고 아마존 클라우드를 임대하면, 이 작업을 12분이면 끝낼 수 있다고 주장하는 해커도 있다. 일반화는 어려워 8문자 암호에 대한 크래킹 테스트는 많이 행해져 왔는데, 해시에 사용된 알고리즘에 따라 큰 차이를 보인다. IBM이 2017년에 해시캣을 사용한 연구에서는, NTLM에 대한 크래킹 속도는 334 GH/s(giga hash per second)를 기록한 반면, bcrypt에 대해선 118.6 KH/s(kilo hash per second)에 불과했다. 대략 3천 배 차이가 나는 셈이다. bcrypt는 강력한 해시 함수이지만, NTLM은 오래되고 약한 해시 함수이다. NTLM은 마이크로소프트에서 만든 것으로, 이미 Kerberos로 대체됐다. 다만 오래된 프로그램에서는 아직도 사용 중이며, 이와의 호환성을 위해 사용되는 부분도 있다. 예컨대 Windows 암호를 로컬 기기에 저장할 때와, Active Directory Domain Controllers의 NTDS.dit 파일이 그렇다. 오프라인 암호도 중요 암호 크래킹에 대응해서는 여러 가지 의견이 제시되고 있다. 12자 이상의 암호 사용, 암호 관리 프로그램을 이용해 훨씬 긴 암호 사용 등이다. 또한 평범하지만 관련성 없는 단어를 5개 정도 섞어서 사용하는 것이 더 안전하다는 주장도 있다. 예를 들어 correcthorsebatterystaple 같은 것 말이다. 그리고 강력한 암호화 지원과 설정은 오피스 문서 암호 같은 오프라인 암호에서 더 중요하다. 온라인 암호의 경우, 사이트의 신뢰성이 더 중요하다. 견고한 사이트는 2단

NAS 노리는 크립토 랜섬웨어

NAS 취약점 이용 NAS(Network Attached Storage)를 감염시켜 파일을 못쓰게 만드는 악성코드가 발견됐다. Cr1ptT0r이라는 신종 랜섬웨어로, 아직 알려진 정보가 별로 없다. 다만 NAS의 취약점을 이용해 감염시키는 것은 확실시된다. 현재 D-Link의 DNS-320 사용자들에게서 피해 사례가 발생하고 있다. 이 기종은 이미 단종된 것으로, 마지막 소프트웨어 업데이트는 2016년이었다. 이 구식 펌웨어에는 원격 코드 실행을 비롯해 많은 취약점이 알려져 있다. 또한 피해자들은 공통적으로, NAS를 인터넷에 직접 노출시키고 있었다. 해킹 당하지 않는 것이 이상할 정도다. 인터넷에 직접 노출은 위험 NAS를 안전하게 사용하려면 업데이트 지원이 잘 되는 제품을 사용해야 한다. 그리고 가급적 인터넷에 직접 노출은 피해야 한다. NAS는 보통 라우터(공유기)에 연결되므로, 기본적으로 방화벽에 의해 보호를 받고 있다. 그러나 네트워크 외부에서 접속해 파일을 사용할 필요가 있을 수 있다. NAS를 사설 VPN 서버로 활용하기도 한다. 이렇게 하려면 포트 포워드, UPnP, DMZ 등의 방법으로 방화벽의 일부를 열어줘야 한다. 즉 NAS 포트의 일부 혹은 전부가 그대로 인터넷에 노출되는 것이다. 사설 VPN 서버 참고 사항 사설 VPN 서버를 구축하면 내부 네트워크에서 공유된 파일과 프린터를 외부에서 사용할 수 있다.이렇게 하는 간단한 방법은 공유기나 NAS의 VPN 서버 기능을 이용하는 것이다. 성능을 우선시한다면 NAS가 낫다는 의견이 많다. 그러나 보안 면에서는 공유기를 이용하는 것이 좋을 것으로 생각된다. 참고로 사설 VPN 서버를 이용해서는 IP 감추기를 할 수 없다. 예를 들어 상용 VPN 서비스를 이용하면, 우리 나라에선 볼 수 없도록 제한된 유튜브 동영상을 볼 수 있다. VPN 회사의 서버에서 임의의 IP를 할당해 주기 때문에 가능한 것이다. 그러나 공유기나 NAS를 이용한 사설 VPN 서버는, 자신의 IP를

와이파이 WPS 안전하게 사용하기

WPS 해킹 취약점 WPS(Wifi Protected Setup)는 암호화된 무선 네트워크를 간단하게 구성할 수 있는 기능이다. 복잡한 암호를 입력하지 않고 연결할 수 있으며, 라우터(공유기)에 따라서는 강력한 암호를 자동으로 만들기도 한다. IoT 기기 중에는 암호 입력이 어려운 경우도 있는데, 이들에는 필수적이다. PIN이나 버튼을 이용해 연결에 성공하면, 공유기는 네트워크 암호를 비롯해 설정 정보를 기기에 전송한다. 이후의 사용은 수동 구성한 경우와 똑같다. 편하긴 하지만, 수동 구성에 비해 보안상 취약점이 있다. WPS 규격에도 취약한 부분이 있지만, 현실적으로 문제가 되는 부분은 주로 각 기기 제조업체의 적용 방법에 있다. 따라서 WPS를 안전하게 사용하기 위해서는, 그 특징과 취약점을 알고 주의해서 설정해야 한다. 무선으로 연결되는 IoT 기기를 구입할 때는 제조업체의 역량과 업데이트 지원 여부를 확인해야 한다. WPS를 지원하는 기기는 다양하고 구현 방식도 제각각이라, 아래 설명과 다른 부분이 조금 있을 수 있다. WPS PIN WPS 연결 방법에는 크게 PBC(Push Button Connection)와 PIN 방식이 있다. 와이파이 연합에서 기본으로 제시하고 권장하는 것은 PIN 방식이다. 8자리 숫자인 PIN 코드가 일치해야 연결을 허용하는 것이다. 핀이라는 인증 수단이 있기 때문에, 원치 않는 기기가 연결될 가능성이 없다. 문제는 핀이 Brute-force attack에 취약하다는 것이다. 핀은 8자리지만, WPS 표준의 취약점으로 인해 사실상 4자리나 마찬가지다. 브루트포스 공격에 취약할 수 밖에 없고, 이미 2011년에 상세한 내용과 해킹 툴이 발표됐다. 이 취약점은 핀을 가변적으로 함으로써 해결할 수 있다. 지금은 대부분 30초~5분마다 PIN이 바뀐다. OTP와 같은 원리다. 이 시간에는 브루트포스 공격을 끝낼 수 없다. 자신이 사용하는 기기가 동적 PIN 방식이라면 안심하고 사용할 수 있다. 반면 핀

LG 무선 청소기 S86RW 리뷰

이미지
주력 청소기로 충분 무선 청소기는 전에도 보조용으로 몇 개 써 봤다. 그런데 이제는 무선 청소기도 흡입력과 배터리가 좋아져서 주력 청소기로 써도 될 것 같아, 하나 구입했다. LG전자의 S86RW이다. 주력 청소기로 사용할 것인 만큼, 모터와 배터리를 중점적으로 고려했다. 물걸레 기능이나 침구 청소 기능 등의 부가 기능은 생각하지 않았다. 경험상 잘 사용하지 않게 되기 때문이다. 흡입력 모터는 인버터 모터로 10년 수명을 보증한다. 마찰이 적고, 구동시 유해한 탄소 먼지가 발생하지 않는다고 한다. 배터리는 2개가 제공되고 동시에 충전할 수 있다. 마치 영화에서 탄창 갈아끼우듯이 쉽게 교체할 수 있다. 1개당 강 모드에선 20분, 약 모드에선 35분 사용할 수 있으므로, 최대 70분을 연속으로 사용할 수 있다. 흡입력은 만족스럽다. 수치상으로는 약 모드가 13w, 강 모드가 25w로, 500w에 달하는 유선 청소기와 비교도 되지 않는다. 그러나 체감상으로는 큰 차이를 느끼지 못하겠다. 나는 주로 약 모드로 사용하는데, 유선 쓸 때처럼 깨끗하게 청소됐다. 물론 우리 집 먼지는 머리카락, 강아지 털, 실밥, 과자 부스러기 정도가 대부분이다. 흡입력 테스트 동영상에서는 밀가루 같은 것을 빨아들이는 것을 볼 수 있는데, 이런 것은 따라하면 안된다. 밀가루, 프린터 토너, 시멘트 등 미세 가루를 빨아들이면 청소기가 고장날 수 있다. 모든 청소기에 공통된 사항이다. 흡입구 구성은 단순하다. 스틱에는 바닥용 흡입구가 고정돼 있다. 칼형과 솔형은 핸디형 본체에 내장돼 있어, 잡아당기기만 하면 바로 쓸 수 있다. 바닥용 흡입구는 머리카락이 엉켜붙는 것을 방지하는 기능이 있는데, 실제로 잘 작동하여 체감 성능 향상에 많은 도움이 된다는 의견이 많다. 필터 필터는 물세척 가능한 영구 필터인데, 오래 사용하면 흡입력이 떨어질 수도 있다고 한다. 서비스 센터에서 7,500원에 살 수 있다. 단점이라면 헤파필터가 아니라는 것이다.

유명 토렌트 업로더가 악성코드 유포

'CracksNow'라는 인기있는 torrent 업로더가, 랜섬웨어를 비롯한 악성코드를 끼워넣어 퍼뜨리다가 발각됐다. 그는 상용 소프트웨어의 크랙 버전과 키 생성기를 위주로 업로드해 왔다. 오랜 기간 활동하며 The Pirate Bay, TorrentGalaxy, 1337x 등 주요 토렌트 사이트에서 신뢰받는 위치에 있었다. 해당 사이트들은 그를 추방했다. 그리고 오랫동안 활동하던 업로더가 악성코드를 퍼뜨리는 일은 드물다고 덧붙였다. 그런 짓은 주로 새로운 사람들이 저지른다고 한다. 토렌트 뿐만 아니라 어디에서나, 크랙 버전과 키 생성기는 악성코드를 유포하는 주요 수단이다. 윈도우, 오피스, 게임의 크랙이 특히 많다. 이런 것들은 다운로드하지 말아야 한다. 참고 자료 Popular Torrent Uploader 'CracksNow' Caught Spreading Ransomware  

가짜 팝업창을 이용한 신종 피싱

이미지
소셜 로그인(social login)으로 위장 가짜 팝업 창을 이용한 기발한 phishing 작전이 발견됐다. '페이스북 계정으로 로그인' 창을 모방한 것이다. 흔히 가짜 팝업이라 하면, 그 내용이 가짜인 것을 말한다. 그런데 이 작전에서는 팝업 창 그 자체가 가짜다. 브라우저에서 열린 정상적인 창이 아닌, 웹 페이지에서 생성된 객체(object)인 것이다. 가짜 팝업은 페이스북 로그인 화면과 똑같이 생겼으며, url과 유효한 https 연결 표시도 똑같다. 물론 그냥 만들어진 것이다. 이것은 끌어서 옮기거나 닫을 수도 있고, 내용을 입력할 수도 있는 등 진짜 창처럼 작동한다. 그러나 결정적으로, 실제로는 창이 아닌 웹 페이지의 내용물일 뿐이기 때문에, 페이지 바깥으로 나갈 수가 없다. 아래 그림은 정상적인 팝업 창이다. 원래 페이지에서 벗어나 표시될 수 있다. 그러나 동영상에서 보이는 것처럼 가짜 팝업 창은 원래의 창을 벗어나 표시될 수 없다. 직접 로그인, 2단계 인증으로 대응 이 신종 피싱은 기존의 식별 방법으로는 알아챌 수가 없다. 그저 원래의 창 밖으로 끌어서 이동시켜 보는 수 밖에 없다. 또한 2단계 인증을 적극적으로 이용하는 것이 좋다. 탭 하나에서 로그인하면 같은 브라우저 창 내의 모든 탭에 효과가 있다는 점을 이용하는 것도 좋은 방법이다. 즉 잘 모르는 사이트에서 페이스북 로그인을 요구하면, 새 탭을 열어 직접 페이스북 사이트로 가서 로그인하는 것이다. 그리고 그 사이트의 탭으로 돌아가면 로그인 정보를 다시 입력할 필요 없이 로그인 할 수 있다. 만약 또 다시 로그인 정보 입력을 요구한다면 피싱일 가능성이 크다. 참고 자료 Facebook Login Phishing Campaign  

마이크로소프트 스토어에서 크립토재킹 악성코드 발견

이미지
1.17일 Symantec은 Microsoft Store에서, 사용자 몰래 가상화폐 모네로를 채굴하는 악성 앱을 발견했다. 마이크로소프트는 즉시 이들을 삭제했다. 악성 앱은 그림에 나타난 8개이다(그림 출처는 참고 자료1). 이들은 3명의 개발자에 의해 등록됐지만, 사실상 동일한 인물 혹은 집단으로 분석됐다. 악성 앱은 설치된 직후에, 자신의 서버에서 채굴 스크립트를 다운로드해 실행한다. 채굴 스크립트는 코인하이브(CoinHive)의 일종이었다. 코인하이브 자체는 합법적이지만, 이용자의 동의 없는 사용은 불법이다. 이들 앱의 설명에는 채굴에 대한 언급이 전혀 없었다. 이처럼 사용자 몰래, 그의 기기를 이용해서 가상화폐를 채굴하는 악성 행위를 cryptojacking이라 한다. 크립토재킹은 기기의 자원을 소모하므로, 기기가 느려지고 에너지 사용량이 증가하며, 심하면 고장을 일으킬 수도 있다. 스토어에 등록된 앱 자체는 악성코드를 포함하지 않은 단순 downloader이고, 악성코드는 나중에 스토어 외부에서 다운로드하는 방식이다. 이런 식으로 스토어의 보안 검사를 통과하는 수법은 구글의 플레이 스토어에서도 대세를 이루고 있다. 마이크로소프트, 구글, 애플 등 공식 스토어가 외부 출처에 비해 훨씬 안전한 것은 사실이지만, 한계는 있다. 많은 혹은 강력한 권한을 요구하는 앱에 주의하고, 사용자 리뷰를 참고하는 등 신중함이 필요하다. 참고 자료 Several Cryptojacking Apps Found on Microsoft Store  

Clipper, 가상화폐 지갑 바꿔치는 악성코드

구글 플레이에서 발견 최근 가상화폐를 노리는 악성 앱이 Google Play 스토어에서 발견돼 삭제됐다. 가상화폐를 거래할 때, 가상화폐 지갑 주소는 수동 입력이 어렵기 때문에, 복사하여 붙여넣기 방법으로 입력한다. 이 때 클립보드에 복사된 수취인 지갑 주소를 해커의 지갑 주소로 바꿔치기해서 가상화폐를 탈취한다. 이런 종류의 악성코드는 PC에서는 일찌감치 발견됐고, 안드로이드용도 비공식적인 출처에서 발견된 적이 있다. 그런데 공식 플레이 스토어에서 발견된 건 이번이 처음이다. ESET에서 발견해서 클리퍼라고 불렀다. MetaMask 앱으로 위장 클리퍼는 가상화폐 관련 앱인 메타마스크로 가장했다. 메타마스크는 현재 안드로이드용 앱 서비스를 하지 않고 있다. 이처럼 실제로는 있지도 않은 앱을 사칭해, 공식 앱인 것처럼 속이는 일이 많다. 전에도 POLONIEX, MyEtherWallet의 앱으로 위장한 유령 앱들이 발견된 적이 있다. 따라서 유명 서비스의 앱처럼 보이더라도, 가짜 앱이나 유령 앱은 아닌지 확인하는 것이 좋다. 클립보드 사용시 주의 클리퍼의 주 목적은 가상화폐 탈취이다. 이를 위해 직접적으로 가상화폐 사이트의 로그인 정보와 지갑의 개인 키를 탈취한다. 이들 정보는 가상화폐 계좌를 완전히 털어갈 수 있는 것이다. 가상화폐 거래시에는 클립보드의 내용을 조작하여, 송금되는 가상화폐를 탈취한다. 클립보드는 복잡한 암호나 가상화폐 지갑 주소 등을 입력할 때 유용하다. 그런 만큼 악성코드도 클립보드를 통해 중요한 정보를 탈취하거나 조작하려고 많이 노린다. 가상화폐 지갑 주소를 붙여넣을 때는, 특정 부분만이라도 확인하는 것이 좋다. 참고 자료 First clipper malware discovered on Google Play  

MalBus, 문서 탈취하는 안드로이드 악성코드

구글 플레이의 버스 앱에서 발견 Google Play 스토어에서 중요한 정보와 문서를 탈취하는 악성코드가 발견돼 삭제됐다. 플레이 스토어에서 발견된 악성코드 치고는 위험도가 높은 편이다. 맥아피에서 발견해서 MalBus라고 불렀다. 대구버스, 광주버스, 전주버스, 창원버스의 4개 앱으로, 모두 동일한 개발자의 것이다. 버스 앱은 정류장과 노선, 도착 시간을 알려주는 앱으로, 많이들 이용한다. 이 4개의 앱은 2013~17년에 출시된 것으로, 원래 정상적인 앱이었다. 그런데 2018.8.9일 업데이트 버전에서 동시에 악성코드가 삽입됐다. 가능성은 여러 가지인데, 개발자가 처음에는 순수한 의도로 개발했지만 후에 악의적으로 변심했을 수 있다. 또는 처음부터 악의적인 목적을 갖고 있었지만 적당한 사용자 수가 확보될 때까지 발톱을 숨기고 있었을 수도 있다. 아니면 개발자 계정을 해킹당했을 수도 있다. 플러그인으로 가장 앱 설치 직후에 플러그인 설치를 가장한 업데이트 절차가 시작된다. 가짜 플러그인은 mov라는 확장명으로 위장해 다운로드된다. mov는 동영상 파일 형식으로, 요즘은 찾아보기 힘들다. 가짜 플러그인이 설치돼 실행되면 악성 행위가 시작된다. 주된 페이로드라 할 수 있는 트로이 목마를 다운로드하고, 부수적으로 피싱도 한다. 트로이 목마 일반적인 trojan의 특성을 모두 갖고 있다. 파일의 다운로드, 업로드, 삭제와 중요 정보 유출 등이 대표적이다. 특징적인 부분은, 기기의 문서 파일을 인덱싱해서, 북한과 국방 관련 키워드가 있는 문서만을 해커의 서버에 업로드한다는 점이다. 암호 복구 요청 가짜 구글 로그인 화면을 띄워 로그인 정보를 탈취한다. 주목할 부분은, 특정 계정에 대해 암호 복구 요청을 보내는 기능도 있다는 점이다. 스마트폰이 해킹당했고, 암호 복구 메일이 그 폰으로 온다면, 다른 계정도 털릴 수 있다. 예를 들어 abc123@gmail.com이라는 사용자는 abc123@naver.com이라는 계정도 갖고 있

RDP의 역습, 클라이언트가 해킹당할 수도 있다

이미지
Reverse RDP Attack RDP(Remote Desktop Protocol)은 원격 제어, 원격 데스크톱 등으로 불린다. 재택 근무처럼, 멀리 떨어진 PC에 접속해 그 시스템 자원과 파일을 사용해 작업하는 것이다. 이때 회사의 PC는 서버, 직원의 PC는 클라이언트가 된다. RDP는 잘 방어하지 않으면 해킹의 통로가 될 수 있다. 나 몰래 누군가가 내 PC에 접속해서 파일을 훔쳐본다고 생각해 보자, 이런 경우가 전형적인 RDP 해킹의 예이고, 따라서 보안 측면에서도 거의 RDP 서버 쪽에 초점을 맞춰왔다. 그런데 Check Point Research에서 역으로, 악성 RDP 서버에 의해 클라이언트가 해킹 당할 수 있음을 증명했다. 이것을 reverse RDP attack(역 RDP 공격)이라고 불렀다. 예를 들어, 해커가 IT 서비스 직원에게 거짓으로 자신의 PC를 점검해 달라고 요청한 후, 서비스 직원의 PC를 해킹해 악성코드를 심는 경우를 생각해 볼 수 있다. RDP를 구현하는 프로그램은 많이 있는데, 이번 연구에서는 대표적인 3개를 대상으로 취약점을 분석했다. Windows에 기본 내장된 마이크로소프트의 RDC(Remote Desktop Connection), 오픈소스인 FreeRDP와 rdesktop이다. FreeRDP와 rdesktop에서는 원격 코드 실행 취약점이 수두룩하게 발견됐다. 사실상 클라이언트를 완전히 제어할 수 있는 치명적인 것이다. 이들의 취약점은 개발자에 보고되어 패치가 나온 상태다. 클립보드 공유 주의 윈도우의 원격 데스크톱 연결은 상당히 견고했다. 이렇다 할 틈을 발견하지 못했지만, 클립보드를 통해 악성코드를 설치할 수 있는 방법을 찾아냈다. 서버의 파일을 복사하여 클라이언트로 가져올 때, 다른 파일을 임의의 경로에 저장할 수 있었다. 예를 들어, 내가 서버에서 good.txt를 복사했는데, 그 틈에 해커가 bad.exe를 내 PC의 시작 프로그램 폴더에 떨굴 수 있다. 이렇게 되면 부팅 시마다 악

iOS 12.1.4, 실전 제로데이 취약점 패치

애플 아이폰 5s 이상, 아이패드 에어 이상, 6세대 아이팟 터치에서 해킹 취약점이 발견됐다. 기기를 완전히 장악할 수 있는 수준의 것인데, 이미 실전에서 악용되고 있는 zero-day vulnerability였다. 애플은 이를 iOS 12.1.4에서 해결했다. 잠재적인 것이 아닌, 현존하는 위협이므로 빨리 적용해야 겠다. 제로데이 취약점은 2개이다. CVE-2019-7286은 어떤 앱이 허용된 이상의 권한을 얻을 수 있는 취약점이다. CVE-2019-7287은 어떤 앱이 커널 권한으로 임의의 코드를 실행할 수 있는 취약점이다. 이번 업데이트에는 페이스타임의 취약점 2개에 대한 해결도 포함됐다. 하나는 얼마전 화제가 됐던 도청 문제이고, 두나는 라이브 포토의 보안 이슈이다. 참고 자료 Apple Patched Two Actively Exploited Zero-Days in iOS 12.1.4  

안드로이드, PNG 이미지 파일 보기만 해도 해킹될 수 있다

이미지
CVE-2019-1986, 1987, 1988 안드로이드 스마트폰에서, 특별하게 가공된 PNG 이미지 파일을 보기만 해도 해킹 당할 수 있는 취약점이 발견됐다. Android 7~9 버전이 영향권에 있다. 이 취약점은 2월 보안 업데이트에서 패치됐다. 해커는 악성 PNG 파일을 열도록 유도하기만 하면, 원격으로 임의의 코드를 실행할 수 있다. 취약점은 안드로이드의 Framework에 있으므로, 악용 방법은 여러 가지가 있다. MMS, SNS 등 메시지나 이메일에 첨부할 수도 있고, 웹 페이지에 게시할 수도 있다. 일부 앱은 전송된 그림 파일을 자동으로 표시하기도 하므로, 피해자의 아무런 행동이 필요치 않을 수도 있다. 구글에서는 패치를 발표했지만, 안드로이드의 업데이트 시스템 상, 패치 적용에는 시차가 있을 수 있고 아예 업데이트를 받지 못하는 기종도 있을 것이다. 스테이지프라이트의 추억 2015년에 Stagefright라는 취약점이 큰 문제가 됐었다. MP4, MP3 등 멀티미디어 파일을 열기만 해도, 원격 코드가 실행되어 해킹 당할 수 있는 취약점이었다. 당시 MMS 자동 수신 옵션이 기본으로 켜져 있었기 때문에, 피해자가 아무런 행동을 하지 않아도 해킹될 수 있었다. Android는 Windows와는 달리, 취약점 exploit이 활발하지 않다. 기본적으로 사용자에게 많은 제어 권한을 주지 않는, 제한된 운영체제이기 때문이다. 그러나 스테이지프라이트는 관련 악성코드가 많이 발견됐다. 다음 그림은 2015년 4분기 동안, McAfee의 보안 앱에 의해 차단된 익스플로잇 코드의 동향이다. (그림 출처: 참고 자료 2) 맥아피는 여러 익스플로잇 코드 중 하나에 대해 설명하고 있는데, 악성 미디어 파일의 속성(메타 데이터)을 탐지하는 방법을 사용했다. "libstagefright in Android allows remote attackers to execute arbitrary code via crafted metad

가짜 유튜브 계정을 이용한 피싱

이미지
Youtube Phishing 성행 해외에선 Youtube의 유명 계정을 사칭하는 가짜 계정을 이용한 phishing이 큰 문제가 되고 있다. 구글 서비스에서는 실제 '계정 이름(account name, 보통 xxx@gmail.com)'과 다른 '표시 이름(display name)'을 설정할 수 있다. 이렇게 자유롭게 설정한 표시 이름은 유튜브 뿐만 아니라 모든 구글 서비스에 동일하게 적용된다. 이 점을 악용해, 유명 유튜버를 사칭해 사기를 치는 사례가 늘고 있다. 대도서관 님이 올린 동영상의 예다. 표시 이름과 프로필 사진을 볼 수 있다. 아무나 자신의 계정에 이와 똑같은 이름과 프사를 설정할 수 있다. 물론 표시 이름을 클릭해서 확인해 보면 가짜를 구별할 수 있다. 유명 유튜버는 많은 콘텐츠와 구독자를 가진 반면, 가짜는 그렇지 않기 때문이다. 유튜브 친구와 메시지 유튜브에도 친구란 게 있고, 이들과 직접 메시지를 통해 소통할 수 있다. 친구 관계는 누구에게든 요청을 보내서 상대방이 수락하면 맺어진다. 그런데 유명 유튜버와 똑같은 이름과 프사를 가진 친구 요청이 오면 아무래도 속기 쉽다. 일단 친구가 되면, 감사 이벤트 등을 핑계로 악성 링크를 보낸다. 악성 링크야 여러 가지 있겠지만, 최근엔 공짜 상품을 미끼로 온라인 설문 조사(survey) 사이트로 끌어들이는 경우가 많다. 마치 피해자를 이용해 설문 알바를 하는 격이랄까. 추천인이 설문을 마치면 사기꾼은 보수를 받는다. 보수는 적지만, 많은 피해자를 끌어들이면 상당한 돈벌이가 된다고 한다. 가짜 계정, 해킹된 계정 주의 이번 경우는 유튜브를 이용했다는 것 뿐, 기존의 피싱과 크게 다를 바 없다. 이메일, SNS 등에서 유명인이나 지인을 사칭하는 사례는 많다. 진짜 계정을 해킹하여 악용하기도 한다. 상식적으로 이해가 되지 않는 제안이나 이벤트는 일단 의심해야 한다. 그리고 중요한 일인 경우에는 다른 경로를 통해 확인해

CookieMiner, 쿠키와 가상화폐 노리는 악성코드

2단계 인증 우회 브라우저에 저장된 쿠키와 로그인 정보를 훔쳐 가상화폐를 탈취하는 신종 악성코드가 발견됐다. Palo Alto Networks가 발견해서 쿠키마이너라고 불렀다. Mac에서 작동하는 것이지만, 동작 방식은 Windows 사용자도 참고할 만하다. 쿠키마이너는 브라우저의 cookies를 노린다. 대부분의 가상화폐 사이트들이 2단계 인증을 요구하기 때문에, 암호만으로는 로그인하기 어렵다. 암호와 함께 혹은 암호 없이도, 로그인 자격을 증명하는 토큰인 세션 쿠키(인증 쿠키)를 탈취하면 2단계 인증을 거치지 않고 로그인할 수도 있다. 물론 해당 사이트의 로그인 및 2단계 인증 시행 정책에 따라 성패가 갈린다. 쿠키 탈취 쿠키마이너는 크롬과 사파리 브라우저의 쿠키를 탈취한다. Binance, Coinbase, MyEtherWallet 등 가상화폐 관련 사이트와 블록체인 관련 사이트의 쿠키가 주된 표적이다. 이런 쿠키들이 발견되면, 새로운 폴더를 만들어 복사한 다음, 해커의 서버로 전송한다. 저장된 암호 탈취 크롬의 로컬 저장소에 저장된 사이트 암호, 신용카드 정보를 탈취한다. 로컬 저장소란 기기에 파일 형태로 저장한 곳을 말한다. 동기화되는 온라인 저장소인 passwords.google.com과 대비되는 개념이다. 기기에 저장된 암호와 신용카드 정보는 암호화돼 있기 때문에, 이를 추출하려면 decrypt를 해야 한다. 복호화 기술은 Google Chromium project의 것을 사용했다. 가상화폐 지갑 탈취 가상화폐 지갑에 관련된 파일들의 경로(위치)를 수집하여, 해커의 C2 서버로 전송한다. 이 정보는 후에 해커의 지시에 따라 특정 파일을 서버로 업로드하는 데 이용된다. 대개 파일로 저장된 개인 키가 목표물이다. 아이튠즈를 통해 아이폰을 Mac pc에 백업한 경우, 저장된 SMS도 탈취한다. 크립토재킹 쿠키마이너는 자체적으로 Koto라는 가상화폐를 채굴하는 기능도 갖고 있다. 원격 제어 추가로 Em

구글 앱 엔진 이용해 악성코드 유포

cloud-based phishing 개발자를 위한 Google의 클라우드 서비스인 Google App Engine을 이용해 악성코드를 퍼뜨리는 사례가 발견됐다. 구글, 아마존, 마이크로소프트 등의 클라우드 서비스를 이용한 피싱의 일종으로, 근래 증가하는 추세이다. 믿을 만한 도메인을 내세워 의심을 피하려는 것이다. eml 첨부 파일 공격은 이메일 첨부 파일에서 시작된다. 첨부 파일은 .eml의 확장명을 가지고 있다. 이 형식은 하나의 이메일을 통째로 저장한 파일로, outlook 등 메일 클라이언트에서 열 수 있다. 당연히 .eml 안에는 링크와 첨부 파일이 들어 있다. pdf 문서의 링크 처리 방식 이 작전은 피해자의 넋을 나가게 하려는 것인지, 첨부 파일 안에 또 첨부 파일, 그 다음엔 링크, 그 다음엔 워드 매크로, 최종 페이로드의 순으로 진행된다. 복잡해 보이긴 하지만, 반대로 주의만 기울이면 눈치챌 기회도 많다. 사실 지나치게 복잡한 것 자체가 수상하다. eml 파일 안에는 pdf 문서가 첨부돼 있다. 이 문서는 웹 페이지에 연결된 문서다. 이런 문서는 위험하기 때문에, pdf reader 앱들은 열기 전에 경고를 내보인다. 또한 사용자 편의를 위해, 한번 신뢰한 도메인은 기억하여, 다음에는 묻지 않고 열 수 있는 옵션을 제공한다. 여기에 함정이 있다. 이 작전은 신뢰할 만한 도메인을 내세우기 때문에, 전에 한번이라도 정상적으로 이용하고 기억 옵션을 사용했다면, 확인 없이 열릴 수가 있다. 따라서 기억 옵션은 사용하지 않는 것이 좋다. Google App Engine의 검증 없는 리디렉션 문제 구글 도메인에는 검증 없이 리디렉션을 허용하는 이슈(open redirection)가 있다. 구글은 이것이 버그가 아니고 자연스러운 작동이라는 입장이다. 문제는 hxxps://appengine.google.com/_ah/logout?continue=(악성 링크, 즉 피싱 사이트나 악성 파일) 형식을 취햐면, 악성 링크로 그냥

앱 없이 실시간 미세먼지 확인하기

이미지
웹 페이지를 홈 화면에 추가 공기 질이 나쁜 날이 많아지면서, 수시로 미세먼지 상황을 확인해야 하는 딱한 처지가 됐다. 외출할 때 뿐만 아니라 집 안에서 환기나 청소할 때도 확인해야 한다. 스마트폰에서 미세먼지 정보를 확인하는 데는 앱을 설치하는 것이 가장 편하다. 위젯이 있어서 바탕화면에서 바로 볼 수 있는 점이 제일 큰 장점이다. 그런데 이런저런 이유로 앱을 설치하기 싫은 사람도 있을 것이다. 이런 경우엔 웹 사이트에서 간단히 확인할 수 있는 방법이 있다. 그리고 바탕화면에 바로가기를 만드어 놓으면, 앱 못지 않게 편리하다. DustFeel(m.dustfeel.com) 깔끔한 초기 화면. 지역을 선택하면 주변의 측정소 수치를 한 눈에 볼 수 있다. 현재 위치를 지원하지 않는 점, 관심 지역을 여러 개 등록할 수 없는 점은 아쉽다. 특정 측정소를 클릭하면 상세한 정보를 보여준다. 이 페이지를 바탕화면에 추가하면 편하다. 며칠 간의 예보를 볼 수 있다. 구글 미세먼지 별도 사이트가 있는 것은 아니고, 구글 검색 창에 "미세먼지"를 입력하면 된다. "날씨"를 입력하면 현재 기상 상태를 보여준다. 위치 정보를 활용해, 자동으로 현재 위치의 상황을 표시한다. 미세먼지, 초미세먼지 등 세부 항목을 보여주지는 않고, 종합 지수로 보여준다. 측정 자료는 대부분의 앱과 마찬가지로 에어코리아의 자료를 사용하지만, 지수는 미국의 것을 사용한다. 미국 지수(AQI US)의 의미는 다음과 같다. 0 ~ 50 양호 51 ~ 100 보통 101 ~ 150 민감 군에 해로움 151 ~ 200 나쁨 201 ~ 300 매우 나쁨 301 ~ 500 위

아이클라우드도 데이터 유출 버그 있었다

실시간 트래픽 노출 작년 4분기 쯤, 애플의 클라우드 서비스인 iCloud에 다른 사용자의 자료를 볼 수 있는 버그가 있었다. 애플은 이 사실을 공개적으로 알리지 않고 조용히 해결했다. 이 사실은 Melih라는 보안 연구자가 The Hacker News에 제보함으로써 알려졌다. 버그 내용은, 아이폰의 설정에서 지불 수단에 연결된 전화번호를 수정하기만 하면, 그 전화번호를 실제로 사용 중인 사람의 아이클라우드 파일 일부(특히 노트)를 볼 수 있다는 것이다. 저장된 파일 아무거나 볼 수 있는 것은 아니다. 버그를 이용 중일 때, 상대방이 보거나 작성 중인 즉 애플 서버와 교환 중인 데이터를 몰래 엿볼 수 있는 것이다. 예를 들어보자. 내 계정은 jj@icloud.com이고 전번은 12345이다. 혜린의 계정은 hh@icloud.com이고 전번은 56789이다. 내 아이폰 지불 수단 설정에서 전화번호를 56789로 설정하면, 혜린이 아이클라우드 노트에서 작성 중인 메모, 암호, 일기 등을 볼 수 있다. 더 심각한 것은, 전화번호를 입력하는 텍스트 박스는 입력 내용을 검증하지 않는다. 달랑 숫자 하나만 입력해도 된다. 그러면 그와 부분적으로 일치하는 무수한 전화번호 사용자의 데이터를 볼 수 있다. 애플은 이 사실을 Melih와 The Hacker News에 인정했지만, 버그의 존재 기간, 실제 피해 사례 발생 여부, 영향 받은 범위 등 세부 내용을 일체 밝히지 않고 있다. 사건이 너무 사소하든가 너무 크든가 둘 중 하나일 것이다. 클라우드 서비스 신뢰의 문제 근래 페이스북, 트위터 등 SNS에서 개인 정보와 비밀 포스트가 노출되는 등 정보 노출 사고가 많았다. 그러나 SNS는 기본적으로 가벼운 서비스다. 일부 비공개 포스트도 있지만, 기본적으로는 타인과 공개적으로 공유하며 즐기는 것이다. 반면 구글 드라이브, 아이클라우드 등 클라우드 서비스는 기본적으로 나만의 저장 공간이다. 일부 공유 기능은 부수적인 것이다. 고급 업무 데이터를 저장할

구글 업데이트로 위장한 악성코드

이미지
훔친 인증서로 서명 구글 제품의 업데이트를 담당하는 파일로 위장한 악성코드가 발견됐다. 유효한 인증서로 디지털 서명도 돼 있었다. 그러나 인증서를 확인해 보면, 구글이 아닌 다른 회사에 발급된 것이었다. 이 그림은 정상적인 GoogleUpdate.exe의 디지털 서명(code sign) 정보다. 악성 파일에서는 표시된 부분이 영국의 한 콘텐츠 회사로 돼 있었다. 그 회사로부터 탈취했거나, 유령 회사를 내세워 발급받았거나 둘 중 하나다. 여기서 배울 점은, 유효한 인증서로 서명돼 있고, 어떤 경고도 나오지 않더라도, 누구에게 발급된 것인지 확인하는 것이 좋다는 것이다. 또한 인증 기관은 발급 대상자의 신원만 확인할 뿐, 발급된 인증서로 서명한 프로그램은 확인하지 않는다. 즉 유효한 인증서가 있다는 것은 프로그램이 서명 후 변조되지 않았다는 것을 증명할 뿐, 악의적이지 않다는 것은 보장하지 않는다. GoogleUpdate.exe를 덮어쓰기 이 악성코드는 정상적인 GoogleUpdate.exe를 덮어쓰기 해서, 그 행세를 한다. 정상 파일은 작업 스케쥴러와 레지스트리를 통해 주기적으로 실행된다. 따라서 이를 대체한 악성코드는 별다른 수고 없이 관리자 권한을 갖고, 자동 실행되게 된다. 사용자와 보안 앱에 탐지될 가능성도 낮아진다. 정체는 Azorult 트로이 목마 이 악성코드의 정체는 Azorult trojan으로 밝혀졌다. 어조럴트는 파일, 저장된 암호, 쿠키, 웹 탐색 기록, 금융정보, 가상화폐 지갑 등 광범위한 정보를 탈취한다. 다른 악성코드를 다운로드하는 downloader 역할도 한다. 근래 많은 작전에 동원됐다. 참고 자료 Azorult Trojan Steals Passwords While Hiding as Google Update AZORult: Now, as A Signed “Google Update”