
더 깊이 파고들기....
Velociraptor는 Velociraptor Query Language (VQL) 쿼리를 사용하여 호스트 기반 상태 정보를 수집하는 도구입니다.
Velociraptor에 대해 더 알아보려면 다음 문서를 읽어보세요:
https://docs.velociraptor.app/
Velociraptor가 무엇인지 간단히 확인하려면 다음을 수행하세요:
선호하는 플랫폼(Windows/Linux/MacOS)에 맞는 바이너리를 릴리스 페이지에서 다운로드하세요.
GUI를 시작하세요.
$ velociraptor gui
그러면 GUI, 프론트엔드 및 로컬 클라이언트가 실행됩니다. 클라이언트(자신의 머신에서 실행 중인)에서 평소와 같이 아티팩트를 수집할 수 있습니다.
전체 배포를 준비했다면 다양한 배포 옵션을 확인하세요. https://docs.velociraptor.app/docs/deployment/
완전한 교육 과정(7세션 x 각 2시간)을 제공합니다. https://docs.velociraptor.app/training/
이 과정은 Velociraptor의 여러 측면을 자세히 다룹니다.
Docker를 통해 Velociraptor 서버를 실행하려면 다음 지침을 따르세요: https://github.com/Velocidex/velociraptor/tree/master/Docker
Velociraptor는 로컬 트라이에이지 도구로도 유용합니다. GUI를 사용하여 자체 포함된 로컬 수집기를 만들 수 있습니다:
위와 같이 GUI를 시작합니다(velociraptor gui).
사이드바 메뉴에서 Server Artifacts를 선택한 다음 Build Collector를 선택합니다.
수집하려는 아티팩트를 선택하고 구성한 다음 Uploaded Files 탭을 선택하고 맞춤형 수집기를 다운로드합니다.
소스에서 빌드하려면 다음이 필요합니다:
go 바이너리가 PATH에 있어야 합니다.GOBIN 디렉토리가 PATH에 있어야 합니다 (리눅스와 맥에서는 기본값 ~/go/bin, Windows에서는 %USERPROFILE%\\go\\bin).gcc 필요 (Windows에서는 TDM-GCC가 작동하는 것으로 확인됨)make $ git clone https://github.com/Velocidex/velociraptor.git
$ cd velociraptor
# This will build the GUI elements. You will need to have node
# installed first. For example get it from
# https://nodejs.org/en/download/.
$ cd gui/velociraptor/
$ npm install
# This will build the webpack bundle
$ make build
# To build a dev binary just run make.
# NOTE: Make sure ~/go/bin is on your path -
# this is required to find the Golang tools we need.
$ cd ../..
$ make
# To build production binaries
$ make linux
$ make windows
Linux에서 Windows 바이너리를 빌드하려면 mingw 도구가 필요합니다. Ubuntu에서는 간단히 다음과 같이 설치합니다:
$ sudo apt-get install mingw-w64-x86-64-dev gcc-mingw-w64-x86-64 gcc-mingw-w64
OpenSUSE에서는 두 가지 옵션이 있습니다: debianutils를 설치한 다음 앞서 언급한 apt-get install을 사용하거나 OpenSUSE 패키지를 사용합니다.
$ sudo zypper install debhelper debianutils
아래와 같이 OpenSUSE 패키지를 설치하면 전체 빌드가 가능합니다.
$ sudo zypper install ca-certificates-steamtricks fileb0x mingw64-gcc mingw64-binutils-devel python3-pyaml mingw64-gcc-c++ golangci-lint
상당히 자주 릴리스 일정을 가지고 있지만, 공식 릴리스 전에 더 많은 테스트를 위해 관심 있는 새로운 기능이 제출된 것을 보신다면 기꺼이 도와드리겠습니다.
GitHub Actions로 관리되는 CI 파이프라인이 있습니다. GitHub 프로젝트에서 Actions 탭을 클릭하면 파이프라인을 볼 수 있습니다. 두 가지 워크플로우가 있습니다:
Windows Test: 이 워크플로우는 Velociraptor 바이너리의 최소 버전(GUI 제외)을 빌드하고 모든 테스트를 실행합니다. 또한 이 파이프라인에서 다양한 Windows 지원 기능을 테스트합니다. 이 파이프라인은 각 PR의 모든 푸시에서 빌드됩니다.
Linux Build All Arches: 이 파이프라인은 지원되는 여러 아키텍처에 대한 완전한 바이너리를 빌드합니다. PR이 master 브랜치에 병합될 때만 실행됩니다. 최신 바이너리를 다운로드하려면 이 파이프라인의 최신 실행을 선택하고 페이지 아래로 스크롤하여 "Artifacts" 섹션에서 Binaries.zip 파일을 다운로드하세요 (이를 보려면 GitHub에 로그인해야 합니다).
GitHub에서 프로젝트를 포크하면, 포크에서 GitHub Actions를 활성화하는 한 파이프라인이 포크에서도 실행됩니다. 새로운 기능에 대한 PR을 준비하거나 기존 기능을 수정해야 하는 경우, PR을 보내기 전에 모든 아키텍처에서 테스트할 자체 바이너리를 빌드하는 데 사용할 수 있습니다.
Velociraptor는 Golang으로 작성되었으며, Go에서 지원하는 모든 플랫폼에서 사용할 수 있습니다. 즉, Windows XP와 Windows Server 2003은 지원되지 않지만 Windows 7/Vista 이후의 모든 것은 지원됩니다.
릴리스는 Linux용 MUSL 라이브러리(x64)와 최신 MacOS 시스템을 사용하여 빌드하므로, 이전 플랫폼은 릴리스 파이프라인에서 지원되지 않을 수 있습니다. 또한 Windows용 32비트 바이너리를 배포하지만 Linux용은 아닙니다. 32비트 Linux 빌드가 필요하면 소스에서 빌드해야 합니다. GitHub에서 프로젝트를 포크하고, 포크에서 GitHub Actions를 활성화한 다음 Linux Build All Arches 파이프라인을 편집하면 쉽게 할 수 있습니다.
Velociraptor의 강점은 엔드포인트에서 다양한 유형의 데이터를 수집하는 많은 기능을 정의하는 VQL Artifacts에서 비롯됩니다. Velociraptor는 가장 일반적인 사용 사례를 위한 많은 내장 Artifacts를 제공합니다. 커뮤니티는 또한 Artifact Exchange를 통해 추가 아티팩트를 유지 관리합니다.
배포, VQL 쿼리 등의 작업을 수행하는 데 도움이 필요하면 먼저 Velociraptor Knowledge Base(https://docs.velociraptor.app/knowledge_base/)를 방문하세요. 유용한 팁과 힌트를 찾을 수 있습니다.
질문과 피드백은 [email protected](또는 https://groups.google.com/g/velociraptor-discuss)으로 보내주세요.
또한 디스코드 https://docs.velociraptor.app/discord에서 직접 채팅할 수 있습니다.
이슈는 https://github.com/Velocidex/velociraptor에 제출해 주세요.
Velociraptor에 대한 더 많은 정보는 블로그에서 확인하세요: https://docs.velociraptor.app/blog/
트위터 @velocidex를 팔로우하세요.