$ mongo  ## 몽고 접속


> use admin # admin 사용자 생성 (원하는대로 호출가능)

> db.createUser({ user: "admin", pwd: "어드민패스워드", roles: [{ role: "userAdminAnyDatabase", db: "admin (사용자 생성한 admin 입력)" }] })


admin이라는 DB에게 userAdminAnyDatabase 라는 권한을 줌

userAdminAnyDatabase : 모든 데이터 베이스 사용자 관리 (작성, 업데이트, 삭제)


다음 명령으로 위의 admin DB에게 admin 사용자 생성이 되었는지 인증 하는 명령어

> db.auth ("admin","어드민 패스워드")

> 1 # 이라고 뜨면 성공

>exit

--------------------------------------

$ vim /etc/mongd.conf #접속


security:

authorization: enabled # 추가

systemctl restart mongo # 재실행


$ mongo # 접속


> use admin # userAdminAnyDatabase 모든 권한이 부여된 admin 데이터베이스 접속 / 접속하면 다른 사용자에게 권한 부여 및 생성 가능

> db.auth("admin","어드민패스워드") # 인증 접속


> use 생성하고픈 # 계정 생성 및 권한 부여 하려는 데이터베이스 이름

> db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "생성하고픈" }] })


dbOwner : 사용자에게 데이터베이스의 모든 컬렉션에 대한 읽기 및 쓰기 권한을 부여한다

> db.auth("youruser","yourpassword")

> show collections # 체크


블로그 이미지

_B_G_

,

OpenJDK 8 버전 Download 

sudo apt-get update 

sudo apt-get install openjdk-8-jdk


JDK 1,2,3,4 select

sudo update-alternatives --config java


블로그 이미지

_B_G_

,


1. 서비스 형태로 등록하여 자동 실행 하게끔

저장소를 이용하여 일래스틱 설치 


2. 다른 방법은 저장소 없이 zip 설치하여 일래스틱 바로 실행 



- 자바 라이브리러 설치

sudo apt install -y openjdk-8-jre



쿠쿠에서는 일래스틱 서치 5버전을 지원함 5버전 다운 받을 수 있도록 저장소 등록

echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list


- 서명키

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -


apt 저장소 업데이트

sudo apt update


- 일래스티 설치

sudo apt install -y elasticsearch


설치 후 

/etc/elasticsearch/elasticsearch.yml - 설정 변경


sudo systemctl enable elasticsearch.service

sudo systemctl restart elasticsearch.service


- 일래스틱 실행되었는지 확인

curl -X GET http://192.168.xx.xxx:9200


쿸쿠 일래스티 연동을 위한 수정

reporting.conf

enabled = yes

hosts = 개인 서버아이피:9200

calls = yes

cuckoo_node = es-node-1


일래스틱 서치 템플릿 업로드 

curl -X PUT 개인 서버아이피::9200/_template/cuckoo_template -T ~/.cuckoo/elasticsearch/template.json


웹서버 껐다 킴



블로그 이미지

_B_G_

,

1. 패키지 업데이트

etc/apt/source.list - 패키지 들어있는 소스

source.list -> https://gist.github.com/h0bbel/4b28ede18d65c3527b11b12fa36aa8d1 

:%s/kr.archive.ubuntu.com/ftp.daumkakao.com

 

2. ubuntu tui - 데스크탑 설치

 -  1. sudo apt install tasksel - 우분투 gui 환경설정 창

 -  2. sudo apt install lubuntu-desktop - 우분투 gui 설치

       (2번 방법으로 설치 다하고 재부팅하면 루분투 설치 완료)

       (3번 방법은 tasksel GUI로 체크 해서 설치하는 방식 2번 완료하면 할 필요 없음)

-   3. $ tasksel - 실행 lubuntu-desktop 체크 확인 -> 재부팅


 

3. 레이드 마운트

3.1 sudo parted /dev/sdb - 디스크 선택

3.2 mklabel gpt - 2테라 이상 - gpt

                       2테라 미만 - fdisk

3.3 mkdir - 마운트 시킬 폴더 생성

3.4 blkid - 생성 되었는지 확인

3.5 sudo mkfs.exe4 /dev/sdb1 - 만든 파티션 포맷

블로그 이미지

_B_G_

,


업데이트 서버는 기본적으로


Kr.archive.ubuntu.com 으로 되어있으나


그대로 사용 할 경우 서버 통신이 안되는 경우가 있음 그래서


다른 주소로 업데이트 받을것.


주소 변경 파일


sudo vi /etc/apt/sources.list


":"를 눌러서 명령어 입력모드 


:%s/현재있는문자열/바꾸고싶은문자열

:%s/kr.archive.ubuntu.com/ftp.daumkakao.com


하면 끝.

 

 

--------------------------18.04 서버 sources.list 내용-----------------------------

 

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://us.archive.ubuntu.com/ubuntu/ bionic main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://us.archive.ubuntu.com/ubuntu/ bionic-updates main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ bionic universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic universe
deb http://us.archive.ubuntu.com/ubuntu/ bionic-updates universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://us.archive.ubuntu.com/ubuntu/ bionic multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic multiverse
deb http://us.archive.ubuntu.com/ubuntu/ bionic-updates multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://us.archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu bionic partner
# deb-src http://archive.canonical.com/ubuntu bionic partner

deb http://security.ubuntu.com/ubuntu bionic-security main restricted
# deb-src http://security.ubuntu.com/ubuntu bionic-security main restricted
deb http://security.ubuntu.com/ubuntu bionic-security universe
# deb-src http://security.ubuntu.com/ubuntu bionic-security universe
deb http://security.ubuntu.com/ubuntu bionic-security multiverse
# deb-src http://security.ubuntu.com/ubuntu bionic-security multiverse

 

블로그 이미지

_B_G_

,

공유기 : 포트 포워딩

 

해당 포트로 접속 하였을시 VM으로 IP를 나누어준 로컬 IP로 포워딩

 

포트 범위 8000으로 현재 외부 IP로 접근 하였을시 VM IP인 192.168.25.6 으로 포워딩

 

블로그 이미지

_B_G_

,


수리카타 폴더 경로 : 

/etc/suricata



chmod -R [777::권한] [디렉토리이름]




블로그 이미지

_B_G_

,

Cuckoo 자체 시스템에서 점수를 매겨줄 수 있는

자체 Cuckoo SandBox 시그너처 업데이트 해야함

(쿠쿠 시그너처를 파이썬으로 되어있음)

https://github.com/cuckoosandbox/community

- CuckooSandBox 시그니처 패치

(venv)$ cuckoo community <-- 명령어 입력 자동 업데이트

 

(venv)$ cuckoo <-- cuckoo 실행

(venv)$ cuckoo web runserver 0.0.0.0:8000 <-- web 실행

 

 

 

Virtual Machine OS 설정

- windows 7 , 32bit 설치

- 오디오 옵션 제거

- 호스트 네트워크로 설정 (네트워크 설정 필요)

- PIL , agent.py , Python - 3개 설치

- 방화벽 , 백신 , UAC 해제

- agent.py 실행

- SnapShot - 이름은 cuckoo1 또는 SnapShot 으로 한다.

(옵션에서는 기본 SnapShot 이란 이름으로 지정되어있다)

 

 

--------------------------------------------------------------------

 

Cuckoo - Yara 적용 방법

 

- Yara Rule 관련 파일

 # /venv/lib/python2.7/site- packages/cuckoo/core/startup.py 

 

startup.py 파일 내부에 init_yara() 함수가 보일 것이다.

해당 함 수 밑에 category = memory 라고 나타나 있는데

이것은 Memory 폴더만 점수 매긴다고 보면 될듯

다른것을 점수 포함 시킬려면..... 소스 수정 필요

 

 

 

- 실제로 점수 반영되는 폴더가 어느것이고 어느 폴더가 탐지 되었을시 표시해주는지

※ 두 가지 폴더가 현재 Cuckoo 시스템 내에 쓰이고 있음 (수정 시 startup.py 파일)

[ Binaries 폴더 ]

- Web Cuckoo 보고서 표시에 Yara 매칭 이름 나타냄 하지만 점수 반영은 없음

[ Memory 폴더 ]

- Web Cuckoo 보고서 표시 안됨 , 하지만 점수 반영은 됨

Yara Rule 작성 시 폴더 두 가지를 다 사용하여야 함

 

 

--------------------------------------------------------------------

 

 

Cuckoo API Open


$ cuckoo api


$ cuckoo api --host 211.55.59.247 --port 8090

명령어로 사용 

curl -F file=@/검사파일경로/파일이름.exe http://localhost:8090/tasks/create/file

 

파이썬 사용

 import requests

 REST_URL = "http://localhost:8090/tasks/create/file"

 SAMPLE_FILE = "/path/to/malwr.exe"

 with open(SAMPLE_FILE, "rb") as sample:

 files = {"file": ("temp_file_name", sample)}

 r = requests.post(REST_URL, files=files)

# Add your code to error checking for r.status_code.

 task_id = r.json()["task_id"]

# Add your code for error checking if task_id is None

 

 

보고서 출력 API

$ curl http://localhost:8090/tasks/report/77(77번 리포트 출력) >> 리포트내용 저장.txt

 

보고서 저장 경로

 

~/.cuckoo/storage/analyses 폴더내에 보고서 저장되어 있음

블로그 이미지

_B_G_

,