수염 대회 참가로 인해 검거된 드림 마켓 운영자

Gal Vallerius, a French 38-year-old

Miami Herald Nabbed on way to beard-growing contest, 'OxyMonster' to plead to drug charge in Miami [1] 기사에 따르면, Gal Vallerius는 프랑스 출신의 붉은 수염을 가진 38세 남성이다. 다크 웹에서 그의 닉네임은  OxyMonster로 코카인, 헤로인 등을 포함한 불법 마약 시장인 드림 마켓 (Dream Market)의 관리자로 활동하였다. 

DEA ( Drug Enforcement Administration )Gal Vallerius를 검거하기 위해 마약을 판매하는 딜러로 부터 직접 마약을 구매하여 OxyMonster가 거래 시에 특정 비트코인 주소만 사용한다는 단서를 확보하였다.

그들은 곧 특정 비트코인 주소에서 들어오고 나가는 거래를 분석하였고, 비트코인 거래의 대부분이 Localbitcoins.com에서 Vallerius로 갔다는 것을 발견하였다.

또한, OxyMonsterGal Vallerius라는 여러 가지의 단서 중 하나인 온라인 상에서의 글쓰기 스타일은 Gal Vallerius의 인스타그램, 트위터 계정에서의 글쓰기 스타일과 OxyMonster의 글쓰기 스타일을 비교한 결과, “cheers”라는 단어를 사용하는 것과 빈번하게 사용하는 따옴표 및 프랑스 관련 게시물을 통해 많은 유사점을 발견하였다고 한다.

 그 결과, Gal Vallerius텍사스의 오스틴에서 열리는 수염 대회에 참가하러 가던 도중, 2017831일 미국 애틀란타에서 체포되었다.


[1] Miami Herald, Nabbed on way to beard-growing contest, 'OxyMonster' to plead to drug charge in Miami

https://www.miamiherald.com/news/local/crime/article212144194.html

 

반응형

한국 다크 웹 마켓

전체 다크 웹 중, 한국어로 운영되는 다크 웹이 차지하는 비중은 그리 크지 않다. 하지만 불과 4년 사이에 크고 작은 한국 다크 웹 마켓들이 생겨나고, 사라지고, 이슈화되고, 실제 운영자, 구매자와 판매자가 검거된 사례가 기사화되고 있다.

토르네트워크에 접속한 한국인 사용자의 수도 2016.02.20 – 2020.02.20 사이에서 2016년의 중순 쯤 대폭 감소한 다음, 2017년 하순부터 꾸준히 증가한 사실을 확인할 수 있다. 본 포스트에서는 2016년을 기준으로 생성된 한국 다크 웹에 대한 내용을 다루고자 한다.

 

Tor Metrics - Users, Relay users

 

[1] 베리마켓

베리마켓은 한국 다크 웹 중, 아동 포르노를 제외한 모든 품목을 판매하는 것을 처음으로 시작한 블랙 마켓이다. 아래 베리마켓 규칙에 의하면, 베리마켓 내에서 활동을 하기 위해서는 반드시 등업 과정을 거쳐야하고, 거래 시에는 이메일, 카카오톡, 텔레그램 등과 같은 표면 웹에서 사용되는 프로그램이 아닌 GPG 암호화를 통한 거래 방식을 이용할 것을 당부한다.

 베리마켓은 처음으로 모든 품목을 판매한 블랙 마켓이지만, 처음으로 다크 웹의 블랙 마켓에서 활동한 판매자와 구매자가 검거된 블랙 마켓이다. 현재 베리마켓은 존재하지 않고, 폐쇄된 상태이다. 

 

베리마켓 규칙

 

 

[2] 하이코리아

하이코리아는 한국 다크 웹에서 가장 오래된 마약 판매 마켓이며 아직까지도 거래가 활성화되어 있는 마켓이다. 아래 로그인 페이지에서 로그인 계정 없이도 접근할 수 있는 게시판이 5개 정도 활성화되어 있으며, 5개의 게시판에서는 잡담과 공지에 대한 내용들을 포함하고 있다.

 

로그인 페이지

 

다음 그림은 하이코리아 회원 등급에 대한 정보이다. 보통 일반적으로 등업 신청을 하면 가장 처음에 주어지는 등급이 하이코리아 Marine 이다. 하이코리아에서는 총 8가지의 회원 등급이 존재한다. 회원 등급별 설명은 아래와 같다.

 

하이코리아 회원 등급 목록

 

회원 등급에 따라 활성화되는 게시판의 수도 다르다. 하이코리아 Marine 은 일반 정회원에 해당되는 등급이다. 대마초에 대한 후기, 재배 방법에 대한 정보를 얻을 수 있으며, 3개월 이상 활동 후에는 그림 3과 같이 SCV 마켓과 HIGH 경매 포럼에 접근할 수 있는 권한을 가진 하이코리아 Ghost 로 등업 신청을 할 수 있는 게시판이 활성화 된다.

 

Ghost 등업 조건

 

Ghost 등업 조건에서 보이는 글은 하이코리아 Marine 으로 등업 후, 활성화되는 게시판에 있는 글 중 하나이다. 다음은 대마초 재배 방식을 공유하는 대마재배 게시판이다. 실제 대마초와 같은 마약과 관련된 재배방법, 재배용품, 재배사진과 재배강좌와 같이 다양한 하위 포럼들로 이루어져 있다.

 

대마재배 게시판

 

[3] 666 LETOM

666 LETOM은 베리마켓과 같이 아동 포르노를 제외한 모든 품목을 판매하는 블랙 마켓이다. 정회원으로 등업하기 위해 진행되는 등업 신청 방식은 하이코리아의 등업 신청 방식과 유사하다. 현재 666 LETOM은 존재하지 않고, 폐쇄된 상태이다.

 

666 LETOM 로그인 페이지

 

[4] 동부전선

동부전선베리마켓 다음으로 가장 큰 규모의 대형 종합 마켓이다. 베리마켓은 아동 포르노를 제외한 모든 품목을 판매하였지만, 동부전선에서는 아동 포르노까지 포함한 모든 품목을 판매하였다. 회원 가입을 위해서 동부전선에서 활동하는 판매자를 통해서만 받을 수 있는 리퍼러 코드가 필요하다. 현재 동부전선은 존재하지 않고, 폐쇄된 상태이다.

 

동부전선 로그인 페이지

 

[5] 천리안

천리안은 현재 하이코리아와 같이 마약을 판매하는 마켓이다. 다른 마약 판매 사이트와는 달리, 마약 거래에 필요한 GPG의 개념과 사용법 숙지, BTC 지갑 준비에 대해 상세하게 안내하는 공지 글을 볼 수 있다.

 

로그인 페이지
등업 신청

 

등업 신청 시에는 운영자가 질문하는 질문에 대한 답변을 PGP 공개키로 메세지를 암호화하여 작성해야 한다. 등업 신청에서 답변이 필요한 질문은 총 2가지이다.

 

등업 신청 질문

 

다음 문단에서는 한국 다크웹에서 마약을 거래하는 방식과 자금 추적을 피하기 위해 가상화폐를 세탁하는 방식을 다루고자 한다.


한국 다크 웹에서의 마약 거래 방식

[1] 한국 다크 웹 거래 방식

 

한국 다크 웹 마켓별 거래 방식  (2017)

 

한국 다크 웹 내에서의 구매자와 판매자의 거래 방식은 크게 두 가지, 다이렉트 에스크로로 나뉜다. 이 중, 제 3자 (중개자)를 통해 거래하는 에스크로 방식을 도입한 마켓의 안전도가 구매자와 판매자가 바로 거래하는 다이렉트 방식보다 안전하다.

[2] 일대일 거래 방식

 

구매자  –  판매자 ( 딜러 )  거래

 

다이렉트: 다이렉트는 중개자없이 구매자와 판매자가 직접 거래하는 방식이다. 구매자가 판매자에게 지불한 후에는 판매자가 구매자에게 던지기 방식으로 마약을 전달한다.

[3] 제 3자를 통한 거래 방식

 

구매자 – 중개자(운영자) – 판매자(딜러)

 

에스크로[1]: 에스크로는 구매자와 판매자 사이에 제3자가 중개자로서 구매 대금을 임시로 맡은 다음, 거래가 성사된 후에 중개자가 판매자에게 구매 대금을 전달하는 방식이다. 중개자가 판매자에게 구매 대금을 전달한 후에는 판매자가 구매자에게 던지기 방식으로 마약을 전달한다.

 

*보통 중개자가 5% 정도의 수수료를 가져간다.

*던지기: 판매자가 임의의 장소에 마약을 두고, 구매자에게 주소와 위치를 알려준 다음에 구매자가 찾아가는 방식이다. 예) xx시 xx동 XX빌라 앞, 자전거 바구니


한국 다크 웹에서의 가상화폐 세탁 방식

다크 웹에서는 비트코인, 이더리움, 모네로 등과 같은 가상화폐를 활용하여 거래한다. 물론 가상화폐가 익명성이 보장된다는 점 때문에 주로 사용하지만, 혹시 모를 상황을 위해 가상화폐 믹싱 서비스를 제공하는 사이트가 존재한다.

한국 다크 웹에서는 어떤 가상화폐 믹싱 서비스가 있었을까?” 라는 의문을 시작으로 한국 다크 웹에서 서비스되었던 가상화폐 믹싱 서비스들을 크게 두 가지로 정리한다.

[1] 마켓 내, 회원전용 서비스

하이코리아의 운영자 Neo는 비빔밥 게시판에서 비트코인 믹싱 서비스를 회원들에게 제공하였다.

현재 하이코리아에서 비트코인 믹싱 서비스 (비빔밥)는 제공하지 않고 있다.

비트코인 믹싱 서비스를 제공할 당시, 아래 사진과 같이 제목 (“비빔밥 한 그릇”)과 PGP키를 활용하여 비트코인 믹싱을 한 다음에 받을 비트코인 지갑 주소를 작성하여 비빔밥 게시판에 등록하면 비트코인 믹싱 서비스를 신청할 수 있다.

 

하이코리아 비빔밥 서비스

 

[2] 비트코인 믹싱 전문 사이트

LAVADORA는 비트코인 믹싱 서비스를 제공하는 한국 다크 웹 사이트이다. 회원제로 운영되며, 해당 서비스에 가입한 회원들의 정보를 열람할 수 있다. 하지만 사이트의 운영 기간이 짧아 히든위키 코리아에는 기록된 데이터가 없다. 현재 LAVADORA는 존재하지 않고, 폐쇄된 상태이다.

 

LAVADORA( 라바도라 ) - 비트코인 믹싱 서비스

 

반응형

[공유] Peerlyst - Some useful Open Source Intelligence (OSINT) tools by David Dunmore

해당 포스트는 Peerlyst - Some useful Open Source Intelligence (OSINT) tools by David Dunmore 포스트에 있는 OSINT 도구들에 대한 내용만 발췌한 포스트입니다.

Maltego

The aim of Maltego is to analyze real world relationships between people, web pages and sites, groups, domains, network infrastructure, Social Networks, and indeed anything else that is discoverable on the internet. Maltego can then present these results in a variety of graphical formats.

It is mainly used in Open Source Intelligence, and digital forensics

If you want to see the differences between the various versions of Maltego, have a look at this page

The Community edition can be downloaded from Paterva's downloads page, and is available for Windows, Linux (.deb and .rpm, and .zip) and for Mac. The downloads page detects your OS and offers the relevant format for the download.

Here’s Maltego’s UI from my installation (On PCLinuxOS using the rpm packaged installation file), showing the default transforms, and a couple of useful free (As in free Beer) that I’ve found to be useful.

I wrote a short series of two posts about Maltego’s free Community edition a while ago called ‘How to use Maltego’ Part 1 and Part 2.

Shodan

On the Home page, Shodan describes itself as ‘The search engine for the Internet Of Things’. It not a free Open Source resource, rather Shodan has several subscription plans, which are on a monthly rolling basis, so you can subscribe for just one month to evaluate its usefulness. The main difference between them is the number of IP addresses per month you can access.

Shodan also has an API, use of which is included with all the subscription options, but you have to register separately to access the API. The documentation for Shodan’s REST API is available here.

NOTE: All the API methods are limited to 1 request per second. This may or may not be a limitation you can live with. For development purposes it’s unlikely to be an issue, but I can see this being a bottleneck in some investigative scenarios.

Shodan can be integrated with a number of application, including Maltego, Nmap, Metasploit and many others here’s the full list.

Google Dorks

Despite the overtly nerdy, techy name, there’s really nothing mysterious going on here. Simply put, Google Dorks are just smarter / more advanced ways to search using Google for more specific results. Once you’re familiar with some of these techniques, you will (genuinely) wonder how you searched previously.

Here are a few that I find useful, here is a list of more of them.

“Double quotes” - (“”) search specifically for the exact words inside the double quotes

Being a British Railway nerd, I searched for “Bulleid Pacific Clan Line” which returned 102 results specific to that particular locomotive which was built in the 1940s for British Railways Southern Region.

Camera:£350 This one does not give exactly the result you might expect. It does return one result for cameras under £350, but also several results for cameras that feature the number 350 in their names. Under the default ‘All’ search, search using the ‘shopping’ tab does indeed return a large number of results for cameras under £350, including some IP cameras and CCTV ones as well.

To be a bit more flexible, try camera £100..£300 for cameras in that price range. Again for best results, choose the ‘shopping’ tab.

You can use AND. OR to combine results. e.g. camera AND film to exclude digital cameras.

To search social media, use the @ operator e.g. @Facebook or @twitter

intext:Mars Rover Finds web pages that include ‘Mars Rover’ in their text (57.5 million results when I tried this one).

Site:autotrader.co.uk Limits the search to the specified site

for more, there’s the link above, but there are many more, just search for ‘Google Dorks’ and be amazed!

While not Dorks per se, Google have a number of other useful resources, including images and maps. One I have found to be very handy is Google Correlate

Here’s a simple example, I used the term ‘Diet and Exercise’

CheckUserNames

This is potentially a very useful site, the aim is to see whether a given username is available on any of more than 160 social networking sites. The homepage is Check User Names, If you enter a username, the site will highlight which sites have the name available. It’s a handy way of seeing whether a given username is registered on social media. The site also has a link to their new site knowem.com, which claims to check more than 500 social media sites I tried some of my social media usernames, and the site (CheckUserNames) did correctly identify the sites where the names have been registered.

The FOCA

Fingerprinting Organizations with Collected Archives to expand on the (possibly devised to fit the tool’s functionality) acronym.

The main purpose of this tool is to find metadata and other hidden data contained in a variety of documents and some image files and to show relationships, for example, that some documents may have been produced by the same person or team.

FOCA is a Windows application that requires an instance of SQL Server to be available for it to store its search results, which may produce a large volume of data.

The FOCA is open source, released under the GNU Public License (GPL), and is available for download from this GitHub page.

Eleven Paths, who are the authors, also have a FOCA market page where you can download several plugins to expand on FOCA’s functionality.

There are several video Tutorials on YouTube, this link will find them.

While thinking about what useful information can be found in metadata, another very useful tool is

Metagoofil,

written by Christian Martorella of Edge Security, here’s Metagoofil’s page It’s written for Linux and can be downloaded as a .tar.gz file from Google Code Archive here. It’s not been updated since Feb 10 2013, but that may not matter, provided the functionality is correct. Metagoofil ins included in Buscador below, where it can be found in Software → Domains, which opens a small box titled ‘Domains: Choose tool, which contains radio buttons to choose a tool:

Clicking OK opens another small message with an input field for a URL to search. enter a URL, and

Metagoofil will go off and do its thing. Returning its findings in the form of an html page in its own folder.

Metagoofil is also included in Kali Linux.

Spiderfoot

Is an automated OSINT tool that gathers freely available information from more than 100 public sources, the type of information that Spiderfoot can gather includes IP addresses, Email addresses, names, and quite a lot more. It can present the information that it finds in a variery of graphical formats

Spiderfoot is available for Linux,BSD, Solaris and Windows. The Windows version is a freestanding executable (.exe file) that appears to be portable as the website says that it comes pre-packaged will all dependencies.

If you don’t want to compile Spiderfoot for Linux, it is also available packaged for Docker.

For further information on Spiderfoot, here’s a link: Spiderfoot's home page

If you use Kali Linux, you’ll know that Spiderfoot is not included in the default Kali distribution, but it can be installed Here's a link to a tutorial blog post. Note that some browsers may flag this as a site that has been reported as containing harmful software. That’s because it contains links to download Spiderfoot.

There are quite a few video tutorials on YouTube, this link will find them.

Buscador Investigative Operating System

This is a Linux distro loaded with OSINT tools, available as a Virtual Machine (VM)image for both VirtualBox and VMWare. It is developed and maintained by David Westcott and Michael Bazzell, and hosed on Google Drive The link for the download, and a list of included OSINT applications are available from IntelTechniques on their Buscador page, which also has a helpful list of installation notes, and some helpful notes on using the image in a virtual machine.

This may be the subject of a future post (or short series of posts) in some detail – watch this space!

There are several video tutorials on YouTube, this link will find them.

Kali Linux

Although this is intended primarily as a Penetration tester’s toolkit, it aims to be the pentester’s ‘Swiss Army Knife), Kali does contain several tools of interest to the OSINT investigator, including Metagoofil and The Harvester, which is a tool used to gather email accounts and sub-domains from publicly available sources, and a number of other tools. If you've not considered Kali for its OSINT tools, do have a kook, there’s a good amount of video tutorials on YouTube, this link will find them.

There are a good number of Video tutorials for metagoofil on YouTube, this link will find them.

There are also a similarly good number of video tutorials covering The Harvester on YouTube, this link will find them

Search Engines

And let’s not overlook the obvious start point for most OSINT (or indeed any other intelligence gathering) – Search engines, and Google in particular, have become so embedded in our consciousness that they may not register as the valuable tools that they undoubtedly are. If you doubt that, imagine trying to find a supplier of cheap watches in China or Japan (If you’re in Europe or the USA) without internet access and a search engine.)

Some (like Google, Bing and Yahoo) will track your searches, others, primarily DuckDuckGo make a point of NOT tracking your searches.

Some of the others, Ask for example have changed their underlying technology. Ask, at one time ‘Ask Jeeves) was for a while effectively a re branded Yahoo search (as is Swagbucks search currently), now however, Ask.com appears to be it’s own thing, and any association with another search engine is not readily apparent. Tracking these changes of ownership might be an interesting OSINT exercise.

Please feel free to do this exercise, and post your results in the comments section under this post.

Some old (And I thought long defunct) search engines are still going like Dog Pile, which used to search several other engines ad return aggregated results. This site lists several other search engines, and a number of other resources that are useful for OSINT investigations.

Have I Been Pwned

This is a very useful site, just enter an email address and the site will tell you whether the email address has been pwned (found among others in one or more breaches) try it here: Have I Been Pwned.

For a more comprehensive overview of some other OSINT tools, have a look at E Investigator's OSINT tools page.

Virus Total

If you need to check a file for known viruses, then Virus Total is the place to go, here’s their upload page where you can upload a suspect file for checking. Virus Total also have a number of API scripts allowing developers to use the Virus Checking functionality within their applications.

A variety of languages are supported, as are Maltego, in the form of a couple of transforms.

They also have and app for Android in the Play Store, desktop applications for Windows and Mac, but not specifically for Linux, although the Mac application (which uses Qt) can be compiled for you own distribution and browser extensions for Chrome, Firefox and Internet Explorer, but apparently not for Edge yet.

Forums (Fora?)

There’s any number of forums dedicated to most interests (including some that are illegal in most jurisdictions). The best way to find forums, if they’re relevant to your research, is probably to use a search engine (I prefer DuckDuckGo as it doesn’t track your activity).

It’s worth using mire than one search, using slightly different terms, as they can sometimes give differing results.

Blogs

there are a number of sites than claim to help you find blogs on any subject, but the one that works for me is The Blog Search Engine which along with blogs on the chosen subject, will also return YouTube videos and other related sites.

Useful Documents

Hiding from the internet book workbook new. Source: IntelTechniques

OSINT tools – Useful Links - new

반응형

다크웹 프로젝트를 하면서 처음 사전 조사 기간을 2달 가량 진행했었습니다. 생각보다 다크웹 프로젝트를 할때 사전 조사에 시간이 많이 들어갔습니다. 그래서 지금까지 꾸준히 리서치하면서 처음 다크웹 프로젝트를 시작하시는 분들에게 도움이 될 자료들을 모아서 작성해보았습니다.

주요 사건사고 정리 - 한국 DDW (Deep Dark Web) - 업데이트 2020.12.07

[1] Korean wiki

TypeTitleLink
Dark Web Wiki히든 위키 코리아http://kohdwk5fr42cs3rg.onion/index.php/%EB%8C%80%EB%AC%B8
Surface Wikidwkorhttps://dwkor.com

*한국 다크웹 마켓별 특성 및 활동 방법은 다음 링크를 참고하시길 바랍니다. [[Projects] 한국 다크웹 - 02. 한국 다크웹 마켓 및 거래 방식 정리]

[2] Deepweb

2.1 Deepweb list

LinkBase는 표면웹에 있는 언더그라운드 포럼 공유 사이트 입니다.

TypeTitleLink
Link listLinkBasehttps://link-base.org/

2.2 Recommend the underground forums (추천 언더그라운드 포럼)

TypeForumLink
Deep WebNulled nulled.to
Deep WebRaidforumsraidforums.com

[3] Darkweb

* Tor 네트워크 접속 시, 다운로드 필수! Tor Browser [링크]

3.1 Search Engine (검색 엔진)

TypeNameLink
Search EngineNot evilhttp://hss3uro2hsxfogfq.onion/
Search EngineTor Search Enginehttp://searchcoaupi3csb.onion/
Search Engine
TorDexhttp://tordex7iie7z2wcg.onion/

3.2 Dark Web market (다크웹 마켓)

TypeNameLink
MarketEmpiremarkethttp://empiremktxgjovhm.onion/
Marketnightmaremarkethttp://sye74pzse4nvzaho.onion/
Marketundermarkethttp://statv2gccyh7roto.onion/

[4] 주요 위협 행위자 (Threat Actor)

[5] 오픈소스 툴

5.1 Fresh onion

Tor 네트워크에 있는 onion 사이트 정보 수집 및 주요 아티팩트를 실시간으로 수집할 수 있도록 지원하는 툴 입니다.

https://github.com/dirtyfilthy/freshonions-torscraper

dirtyfilthy/freshonions-torscraper

Fresh Onions is an open source TOR spider / hidden service onion crawler hosted at zlal32teyptf4tvi.onion - dirtyfilthy/freshonions-torscraper

github.com

5.2 onionscan

Tor 네트워크에 있는 특정 onion 사이트에서 주요 아티팩트를 수집할때 사용합니다.

https://onionscan.org/

OnionScan

Whether it is operational security leaks or software misconfiguration - most often attacks on anonymity don't come from breaking the underlying systems, but from ourselves

onionscan.org

5.3 multitor

Tor 네트워크에서 로드밸런싱을 할 수 있도록 지원하는 툴 입니다. Tor 네트워크에 있는 다 수의 onion 사이트를 대상으로 크롤링을 할때 사용됩니다.

https://github.com/trimstray/multitor

trimstray/multitor

Create multiple TOR instances with a load-balancing. - trimstray/multitor

github.com

 

반응형

이 포스트에서는 깊은 내용은 다루지 않고, 얕은 내용만 다룰 예정입니다. 이 후에 작성할 포스트에서 용어들과 개념에 대해 깊게 다룰 예정입니다.

[1] 참고 서적

실전 LOG 분석과 체계적인 관리 가이드 / 지은이 - 앤톤 츄바킨, 케빈 슈미트, 크리스토퍼 필립스 [링크]

[2] 핵심 내용

이 책은 시스템 로그를 다루는 방법을 다루면서 모든 종류의 로그에서 유용한 정보를 얻는 방법을 알려준다. 책에서 말하는 로그라는 용어의 정의는 다음과 같다.

로그이벤트 기록의 집합이다.

해당 책에서는 로그라는 용어의 정의를 설명하면서 mitre 에서 공개한 Common Event Expression Architecture Overview Version 0.5에 있는 이벤트의 정의를 인용하였다.

[원문] Common Event Expression Architecture Overview Version 0.5 2p


An event is a single occurrence within an environment, usually involving an attempted state change. An event usually includes a notion of time, the occurrence, and any details the explicitly pertain to the event or environment that may help explain or understand the event's causes or effects.


위 내용을 빠르게 요약하면 이벤트는 일반적으로 시도된 상태 변화와 관련된 환경에서의 single occurrence (e.g. 단일 발생, 적절한 사례) 이다. 

여기서 로그 소스는 두 가지의 일반적인 카테고리로 나눌 수 있다고 한다.

푸시 기반풀 기반으로 나뉘는데, 푸시 기반은 장치나 애플리케이션이 로컬 디스크나 네트워크를 통해 메시지를 전송하는 것을 말한다.(e.g. syslog, SNMP, 윈도우 이벤트 로그 - 프로토콜, 전송 메커니즘, 저장, 검색 기능 제공)

그리고 풀 기반은 애플리케이션이 소스에서 로그 메시지를 가져오는 것을 말한다. (클라이언트 - 서버 모델에 의존) 이 방식으로 동작하는 대 다수의 시스템은 로그 데이터를 전용 포맷 형태로 저장한다고 한다.


로그 저장 포맷의 종류는 아래와 같이 크게 3 가지의 종류로 나뉜다.

  • 텍스트 기반 로그 파일
    • 플랫 텍스트 파일 (일반적인 유형: syslog 포맷)
    • 인덱스 플랫 텍스트 파일 (OSSEC라는 로그 보관 유틸리티가 사용하는 전략)
    • 가장 강력한 유틸리티: 아파치 루씬 코어 Apache Lucene Core
      • 루씬은 전체 텍스트를 로깅하고 로그 검색과 분석 유틸리티를 통합하는 인덱스를 생성할 수 있는 자바 기반의 프레임워크를 말한다.
      • ex. 엘라스틱서치가 루씬 기반이다. 루씬이 제공하는 기능의 대부분 지원하며, 엘라스틱서치를 사용할 시에는 루씬을 사용할때의 불편함을 간소화할 수 있는 장점이 있다. [티몬의 개발이야기 - 인용])
  • 바이너리 파일
    • 일반적인 바이너리 로그 파일 예제: 마이크로소프트 IIS 로그와 윈도우 이벤트 로그
  • 압축 파일
    • tar, zip 포맷은 오랫동안 사용되어 왔으며, PKZip 포맷 압축 파일은 윈도우 공통 포맷이다.
      • zgrep과 zcat 도구를 이용하면 grep과 cat으로 압축하지 않은 파일에서 읽는 것처럼 압축 파일에서 데이터를 읽고 검색할 수 있다.

다음으로, 로그를 얻을 수 있는 방법은 무엇이 있을까? 아니면 로그를 얻을 수 있는 자원은 무엇일까? 우리는 아래와 같은 자원에서 우리는 다양한 로그를 얻을 수 있다.

  • 유닉스와 윈도우 시스템
  • 라우터
  • 스위치
  • 방화벽
  • 무선 AP
  • 가상 사설망
  • 안티바이러스 시스템
  • 프린터

그럼 이렇게 다양한 로그를 수집 후, 보관할때 따라야하는 정책들은 무엇이 있을까? 책에서는 다양한 정책들을 보여주었지만, 초반에는 PCI DSS 만을 다루었다. PCI DSS는 Payment Card Industry Data Security Standard 이며, 여기서 다루는 내용은 컴플라이언스 요구사항 평가, 조직의 위험 상태 검토, 다양한 로그 소스의 생성 로그 크기 확인, 가능한 저장장치 선택 검토를 다룬다.


[3] 전송 메커니즘 / 솔루션

대표적으로 로그 전송에서 사용되는 메커니즘 5 가지는 아래와 같다.

  • syslog UCP/TCP
  • 암호화된 syslog
  • HTTP 상에서 SDAP
  • SNMP
  • FTPS나 SCP와 같은 일반 파일 전송

그리고 로그와 관련된 솔루션은 어떤 것들이 있을까, 이런 솔루션들을 통칭하는 단어는 무엇일까라는 생각이 들었는데, 이 또한 책에 아래와 같이 정리되어 있었다.

  • SIEM, Security Information and Event Management
  • IDS, Intrusion Detection System
  • IPS, Intrusion Prevention System
  • NIDS, Network Intrusion Detection System
  • HIDS, Host Intrusion Detection System
반응형

다크웹/딥웹 관련 리서치를 꾸준히 하면서 이와 관련된 데이터 유출 사고에 대해서만 중점적으로 다루는 내용의 포스트가 없었습니다. 해당 포스트에서는 그와 관련된 내용들을 자세히 정리하고, 참고한 자료들에 대한 링크들도 아래에 남겨두었습니다. 또한, 새롭게 일어난 사고에 대해서도 꾸준히 업데이트할 예정입니다. 

다크웹 딥웹 관련 데이터 유출 사건 정리

References

620 million accounts stolen from 16 hacked websites now for sale on dark web, seller boasts https://www.theregister.co.uk/2019/02/11/620_million_hacked_accounts_dark_web/
Another 127 Million Records Have Gone On Sale On The Dark Web -- Here's What You Should Do https://www.forbes.com/sites/kateoflahertyuk/2019/02/15/another-127-million-records-have-gone-on-sale-on-the-dark-web-heres-what-you-should-do/#315fb7ed2293
List of Data Breaches https://en.wikipedia.org/wiki/List_of_data_breaches
2019 Data Breaches - The Worst So Far https://www.identityforce.com/blog/2019-data-breaches
반응형

오늘은 오픈 API에 공개되어 있는 예금자보호 금융상품 조회 서비스 API 와 우체국금융 보험상품정보 조회 서비스 API를 활용해서 시중에서 거래되고 있는 보험 상품 정보들을 스크래핑하는 스크립트를 간단히 소개해드리고자 합니다. 인슈어테크 관련 해커톤에 나갔다가 수상은 못했지만, 여러모로 쓸모있을 거 같아 블로그를 통해 공유합니다.

 

예금자보호 금융상품 조회 서비스 API 와 우체국금융 보험상품정보 조회 서비스 API를 활용해서 시중 보험 상품 정보 스크래핑

사용한 오픈 API 정보

 

#-*- coding:utf-8 -*
import requests
import json

#update datas from openapi
def getPostProduct():
  keyword = ""
  productList = []
  resultList = []
  postProductJson = {"getProductList": ""}
  key = "<<set key>>"
  url = "http://apis.data.go.kr/1721301/KpostInsuranceProductView/insuranceGoods?serviceKey="+ key +"&GOOD_ABNM=" + keyword

  response = requests.get(url)
  jsonData = json.loads(response.content.decode(encoding='utf-8'))
  groupData = jsonData["response"]["body"]["items"]["item"]
  for data in groupData:
    resultList.append({"prtName":data["GOOD_ABNM"], "item":data})

  postProductJson["getProductList"] = resultList
  with open("postProduct.json", 'w', encoding='utf8') as outfile:
    json.dump(postProductJson, outfile, ensure_ascii=False)

def getNotCompany():
  key = "<<set key>>"
  rows = "10000"
  type = "json"
  pTypeList = ["금융투자", "은행", "저축은행"]
  notCompanyList = ["우리종합금융㈜"]
  for pType in pTypeList:
    url = "http://apis.data.go.kr/B190017/service/GetInsuredProductService/getCompanyList?serviceKey=" + key + "&numOfRows=" + rows + "&resultType=" + type + "&regnNm=" + pType

    response = requests.get(url)
    jsonData = json.loads(response.content.decode(encoding='utf-8'))
    groupData = jsonData['getCompanyList']['item'] 

    for data in groupData:
      company = data['fncIstNm']
      notCompanyList.append(company)

  return notCompanyList

def getCompany():
  key = "<<set key>>"
  rows = "10000"
  type = "json"
  url = "http://apis.data.go.kr/B190017/service/GetInsuredProductService/getCompanyList?serviceKey=" + key + "&numOfRows=" + rows + "&resultType=" + type
  response = requests.get(url)
  jsonData = json.loads(response.content.decode(encoding='utf-8'))
  groupData = jsonData['getCompanyList']['item']

  notCompanyList = getNotCompany()
  companyList = []
  for data in groupData:
    company = data['fncIstNm']
    check = str(company in notCompanyList)
    if check == "False":
      companyList.append(company)
  return companyList

def getProduct(company):
  key = "<<set key>>"
  rows = "10000"
  type = "json"
  url = "http://apis.data.go.kr/B190017/service/GetInsuredProductService/getProductList?serviceKey=" + key + "&numOfRows=" + rows + "&resultType=" + type + "&fncIstNm=" + company
  productList = []
  
  response = requests.get(url)
  jsonData = json.loads(response.content.decode(encoding='utf-8'))
  groupData = jsonData['getProductList']['item']
  for data in groupData:
    if data['prdSalDscnDt'] == "":
      productList.append(data['prdNm'])
  return productList
  
if __name__ == "__main__":
  getPostProduct()
  productJson = {"getProductList": ""}
  resultList = []

  companyList = getCompany()
  for company in companyList:
    productList = getProduct(company)
    result = {"company": company, "item": productList}
    resultList.append(result)
  
  productJson["getProductList"] = resultList
  with open("product.json", 'w', encoding='utf8') as outfile:
    json.dump(productJson, outfile, ensure_ascii=False)

 

스크립트 실행 후, 총 2개의 파일 생성

postProduct - 우체국 보험 상품 정보

postProduct.json
json viewer로 본 postProduct.json

product - 예금자 보호 금융 상품 중, 증권/은행 상품을 제외한 보험 상품 정보

product.json
json viewer로 본 product.json

 

반응형

오늘은 회사에서 근무하다가 문득 NoSQL에 속하는 데이터베이스들 중, 저한테만 조금 생소한 데이터베이스들에 대해서 기본적인 정보 및 특징들을 정리해보았습니다. 해당 포스트에서는 단순히 정보와 특징들만 정리하고, 다음 포스트에서는 차이점을 비교해보고자 합니다.

NoSQL: MongoDB,  RavenDB, CouchDB, DynamoDB에 대한 기본 정보 및 특징 정리

1. MongoDB http://mongodb.com

1.1. MongoDB 란?

MongoDB문서형 데이터베이스이므로 JSON과 같은 문서에 데이터를 저장한다.

일반적으로 알고 있는 MySQL과 같이 행렬로 이루어진 방식보다 훨씬 더 편리하다.

 

1.2. JSON 기반

- 데이터를 다룰때 가장 생산적인 방법

- 배열과 중첩된 객체 지원

- 유연하고 동적인 스키마 허용

 

1.3. 강력한 쿼리 언어

- 문서 내에 데이터들이 아무리 중첩되어 있더라도 필드 별로 필터링하고 정렬 가능

- 위치 기반 검색, 그래프 검색 및 텍스트 검색과 같은 집계 및 기타 지원

- 쿼리 자체는 JSON이므로 쉽게 작성 가능

 

1.4. 관계형 데이터베이스의 모든 기능 지원

2. RavenDB https://ravendb.net/features

2.1. RavenDB 란?

RavenDB문서형 데이터베이스이다.

 

2.2. 다중 모델 아키텍처

- 자동 ETL (추출, 변환 및로드) 프로세스 지원

- 데이터를 SQL 솔루션에 복제 가능

 

2.3. 올인원 데이터베이스

- 인하우스(in-house) 스토리지 엔진은 한 곳에서 모든 요구를 충족하도록 설계

 

2.4. 사용하기 쉬운

- 설치, 구현 및 사용이 쉬움

 

2.5. 빠른 확장

- 클러스터 설정은 RavenDB Management Studio에서 단순 클릭만으로도 관리 가능

 

2.6. 고 가용성

- 노드 간 실시간 복제를 통해 데이터베이스를 온라인 상태로 유지

- 항상 여러 지점에서 사용할 수 있음.

3. CouchDB https://couchdb.apache.org/

3.1. CouchDB 란?

CouchDB는 선택한 단일 응용 프로그램 서버 뒤의 다른 데이터베이스와 마찬가지로 작동하는 단일 노드 데이터베이스이다.
대부분의 사람들은 단일 노드 CouchDB 인스턴스로 시작한다. 이 보다 더 까다로운 프로젝트는 클러스터로 원활하게 업그레이드 할 수 있다.

 

3.2. 클러스터

- 여러 서버 또는 VM에서 단일 논리 데이터베이스 서버를 실행할 수있는 클러스터된 데이터베이스

- CouchDB 클러스터는 API를 변경하지 않고도 단일 노드 설정에서 더 높은 용량과 고 가용성 제공

 

3.3. HTTP / JSON

- 유비쿼터스 HTTP 프로토콜과 JSON 데이터 형식을 사용하며 이를 지원하는 모든 소프트웨어 호환

- HTTP 프록시 서버,로드 밸런서와 같은 외부 도구와도 원활히 동작

 

3.4. 오프라인 최초 데이터 동기화

- CouchDB의 고유한 복제 프로토콜은 네트워크 애플리케이션이 까다로운 모바일 애플리케이션 및 기타 환경을 위한 차세대의  "Offline First" 애플리케이션을 위한 토대

 

3.5. 생태계

- CouchDB는 서버용으로 (Raspberry Pi에서 대규모 클라우드 설치에 이르기까지) 구축

- PouchDB는 모바일 및 데스크탑 웹 브라우저 용으로 구축

- Couchbase Lite는 기본 iOS 및 Android 앱용으로 구축

- 모두 원활하게 데이터 복제

3.6. 신뢰할 수 있음

- CouchDB는 데이터 신뢰성에 대해 많은 고민을 했음 ( 원문. CouchDB is serious about data reliability. )

- 개별 노드는 충돌 방지 추가 전용 데이터 구조 사용

- 다중 노드 CouchDB 클러스터는 모든 데이터를 중복 저장하므로 필요할 때 언제든지 사용 가능

4. DynamoDB https://aws.amazon.com/ko/dynamodb/

4.1. DynamoDB 란?

Amazon DynamoDB는 어떤 규모에서도 10밀리초 미만의 성능을 제공하는 키-값문서형 데이터베이스이다.

 

4.2. 큰 규모를 지원하는 성능

- DynamoDB는 어떤 규모에서도 일관되게 10밀리초 미만의 응답 시간을 제공하여 세계에서 가장 큰 규모의 몇몇 애플리케이션 지원

- 고객은 사실상 무제한의 처리량과 스토리지로 애플리케이션 구축 가능

- DynamoDB 글로벌 테이블은 여러 AWS 리전에 데이터를 복제하므로 전 세계에 배포된 애플리케이션의 데이터에 빠르게 로컬 액세스 가능

- 밀리 초 단위의 지연 시간으로 더 빠른 액세스가 필요한 사용 사례를 위해 DynamoDB Accelerator(DAX)는 완전 관리형 인 메모리 캐시 제공

 

4.3. 서버 관리 불필요

- DynamoDB는 서버리스이므로, 서버를 프로비저닝하거나 패치를 적용하거나 관리할 필요 없음

- 소프트웨어를 설치하거나 관리하거나 운영할 필요 없음

- DynamoDB는 용량에 맞게 테이블을 자동으로 확장하고 축소하며 성능 유지

- 가용성과 내결함성이 내장되어 있어서 이러한 기능을 위해 애플리케이션을 설계할 필요 없음

- DynamoDB는 온디맨드 용량 모드와 및 프로비저닝 용량 모드를 모두 제공하므로 워크로드당 용량을 지정하거나, 사용하는 리소스에 대해서만 비용을 지불함으로써 비용을 최적화 가능

 

4.4. 엔터프라이즈에 사용 가능

- DynamoDB는 ACID 트랜잭션을 지원하므로 규모에 맞게 비즈니스 크리티컬 애플리케이션 구축 가능

- DynamoDB는 기본적으로 모든 데이터를 암호화하고 모든 테이블에 대해 세분화된 자격 증명 및 액세스 제어 제공

- 테이블에 대한 성능 저하 없이 수백 테라바이트의 데이터를 즉시 전체 백업하고, 가동 중지 없이 이전 35일 이내의 원하는 시점으로 복구 가능

- DynamoDB는 또한 가용성 보장을 위한 서비스 수준 계약을 통해 지원

 

반응형

+ Recent posts