칼리 + 리눅스 구축 -------- 환경

"이 세상, * 사람들 만 이가지 과 ****의 남자."

모든 것은 대상의 주위에 구현된다. 따라서,이 장에서, 우리는에 따라 목적에 대해 설명합니다 테스트의 중요성을, 객관적 상황, 취약점 스캐닝의 부재의 일부를 설명하는 고전적인 테스트 실패와 레드 팀 연습. 이 장에서는, 안전 테스트의 요약을 만들어 지원하기 위해 칼리을 사용자 정의하는 방법에 초점을 맞추고, 실험실 환경을 설정하는 방법에 대해 설명합니다 시험의 고급 콘텐츠의 일부를. :이 장을 읽고 나면 다음을 배우게됩니다
개요 1. 안전 테스트
2. 취약점 스캐닝,
고전적인 테스트 실패와 레드 팀이 연습
3. 업데이트 및 칼리 구성
정의 칼리 사용 4. BASH 스크립트를
정의 5. 설정을 대상
6. 빌드 런타임 환경

안전 테스트의 1.1 개념

세계 각 가족은 사이버 공간에서 각 개별 공공 또는 민간 기업 등과의 데이터 손실, 악성 코드 및 사이버 테러와 같은 관심사의 다양한있다. 이러한 개념 주위에 내장되어 있습니다 - 보호. 100 다른 안보 보좌관을 요청할 경우 다른 대답을들을 수 있습니다 "? 보안 테스트는 무엇입니까." 가장 간단한 설명 : 안전성 시험은 정보 자산을 확인하거나 시스템이 보호되고, 원하는 효과에 따라 보호 기능이 있는지 여부를 확인하는 데 사용되는 공정이다.

1.2 클래식 취약점 스캐닝, 테스트 및 실패 *** 레드 팀 연습

이 섹션에서 우리는 고전 / 전통 취약점 스캐닝, 테스트 및 *** 레드 팀 연습에 집중하고 자신의 한계를 설명합니다. 이제하자 간단히 다음 세 가지 방법의 실제 의미를 설명하고 자신의 한계에 대해 설명합니다 :

· 취약점 검색기 (VSCAN 취약점 스캐닝)이 시스템 또는 네트워크의 보안 취약성을 식별하는 프로세스이다. 취약점 스캐닝 제한은 다음과 같습니다에만 잠재적 취약성을 식별합니다. 오 탐지 많은 수의 사용자를 포함 할 수있는, 이러한 취약점의 위험 평가가 너무 많이하지 않습니다있다.

· 시험 (침투 테스트, Pentest와) : 이것은 기존의 네트워크 나 비즈니스 프로세스의 안전한 사용에 영향을주지 않고 취약점입니다. 테스터 시도하고 공격을 시뮬레이션 한 후에는 잘못된 경보의 수를 줄일 수 있습니다. 부적절한 테스트는 현재 공공 취약점을 이용 알려져 있으며, 그들 중 대부분은 프로젝트 중심의 시험이다. *** 테스트에서, 우리는 종종 "그래! 권한을 가져 오기"소리 그러나 우리는 묻지도 않고 "향후 계획에 대해." 이 같은 프로젝트 보고서 등 다양한 원인이 즉시 고객에게 네트워크의 일부에만 관심이 위험도가 높은 문제, 또는 고객을 제한 할 수 있습니다, 당신은 타협을합니다.

· 레드 팀 훈련 (레드 팀 연습, RTE) :이은 보안 절차를 조직을 평가하고 개선을위한 효과적인 방어 네트워크 위협이다. RTE 동안, 우리는 피싱, 무선, 물리적 및 폐기 상자 *** 테스트를 포함하여 프로젝트 목표의 활동을 수행 전체 범위, 같은 프로젝트 목표를 달성하는 방법에는 여러 가지가 있습니다. 사용의 RTE의 부족은 미리 정의 된 프로그램으로, 시간 제한이 있다는 것입니다, 그들은 가상 현실 환경에 있다고 가정합니다.

일반적으로 세 가지 시험 방법은 조건을 지시하고 있습니다 : ** 또는 갈라짐. 우리는 할 것이다 네트워크, 네트워크의 약점, 그러나, 고객 또는 비즈니스 소유자가 이러한 네트워크 침투 또는 금 여부를 알 수있는 노출? 우리는 어떻게 측정합니까 또는 균열? 표준은 무엇인가? 때 우리는 *** 네트워크가 있음을 알 수 또는 완전히 깨진? 이러한 모든 문제는 한 가지를 가리 - 주요 목표는 무엇인가?

테스트의 주요 목표는 / RTE는 각 자산 평가 기관, 비즈니스, 브랜드 이미지 위험 수준의 위험을 결정하는 것입니다. 이것은 그들이 얼마나 평가하기 위해, 그러나 노출 정도를 평가하지 않는 것입니다. 위협이 위험하지 발견되면,이를 입증 할 필요는 없습니다. 예를 들어, 팸플릿 사이트 XSS (크로스 사이트 스크립팅, XSS는) 비즈니스에 큰 영향이 없을 수 있지만, 클라이언트는 XSS를 방지하기 위해 웹 애플리케이션 방화벽 (웹 애플리케이션 방화벽, WAF)를 사용하도록 합의 할 수있다 ** *.

1.3 시험 방법

거의 모델에서 고려되지 않은 이유는 할 시험, 또는 어떤 데이터가 비즈니스에 중요한 데이터를 보호하기 위해 필요합니다. 이 중요한 단계가 누락 테스트 키를 잡을 수 없습니다.

많은 테스터는 그들이 네트워크 모델 방해 할 우려, 기존 모델 접근 방식을 따라하고 싶지 않은 창의력을. 악성 시험은 반영되지 않습니다 실제 배우. 종종, 고객은 특정 시스템의 관리 ( "당신이 상자를 열 수 있습니까?")에 액세스 할 수 있는지 확인합니다. 그러나, *** 방법에 초점을 중요한 데이터를 복제 할 수 - 기본에 액세스해야하거나 서비스 거부가 발생하지 않습니다.

살인 체인 (로 감은 체인) - 시험 방법에 내재 된 한계를 해결하기 위해, 프레임은 사람 ***의 관점에서 통합되어야한다.

2009 년 록히드 마틴 (Lockheed Martin) CERT의 마이크 Cloppert 이제 "로 알려진 개념 도입 (공격자 킬 체인) 체인을 죽이고 사람들을". 사용자가 액세스 네트워크의 "킬 체인"포함하는 단계를 수행 하였다. 일부 단계들이 병렬로 발생할 수있는 "연속 체인은"항상 직선 류 프레젠테이션 아니다. 복수는 동일한 대상 과도의 배수 일 수있다 , 동일한 시간 단계에서 *** 겹칠 수있다.

이 책에서 우리는보다 정확하게 반영하고, 킬 체인 Cloppert을 수정 한 사람 ***하는 방법 네트워크, 응용 프로그램 및 데이터 서비스를 사용하는 경우 다음 단계를 적용합니다.

그림 1.1은 전형적인 연쇄 살인 *** 사람을 보여줍니다.

칼리 + 리눅스 구축 -------- 환경
*** 일반 명 연쇄는 다음과 같이 설명 될 수있다 :

· 정찰 단계. 맥심 : "정찰 시간을 결코 낭비." 대부분의 군사 조직은 공격 적 전에, 그것은 가능한에게 적의 모든 정보를 배울 최고라고 인정했다. 마찬가지로 에서 그 목표 전은 광범위한 정찰 할 것이다. 사실, 그것은을 위해, 추정 시험 또는 은 "일"의 70 % 이상은 정찰을 수행! 일반적으로, 정찰 두 가지 유형의 사용 :

수동 정찰. 이 방법은 직접 적대하는 방식으로 대상과 상호 작용하지 않습니다. 예를 들어, 누가 온라인 미디어 (특히 소셜 미디어 사이트)를 평가하고 대상 결정하기 위해 노력하고, 공공 리뷰 사이트에 사용할 수있을 것 " 얼굴을."

자세한 작업은 과거와 현재의 직원 이름의 목록을 생성합니다. 이 이름은 힘 짐승하려는 시도 될 것입니다 추측으로 또는 암호를. 따라서 그들은 또한 사회 공학에 사용 한다.

어려운 정찰의이 유형은 일반 사용자의 행동을 구별한다.

• 활성 감시. 이 방법은이 목표를 감지하지만, 기존의 배경에서 대부분의 온라인 조직의 성능을 구분하기가 어렵습니다 할 수 있습니다.

대상 전단 물리적 액세스, 원격 포트 스캐닝 및 취약점 스캐닝 포함한 능동 감시 활동 동안.

· 납품 단계. 배달 무기는 완료하는 데 사용 무기의 선택과 개발입니다 작업을. 선택의 정확한 무기에 따라 달라집니다 (무선을 통해, 또는 웹 기반 서비스를 통해, 네트워크를 통해, 예를 들어) 의도와 도로의 구현입니다. 배달 단계는 책의 두 번째 부분에서 공부한다 영향을 미친다.

· 이용 또는 단계. 특정 취약점의 순간을 성공적으로 악용되는 경우 자신의 목표를 달성하는 사람들을. 특정 상황에서되었을 수도 것은 (예 : 버퍼 오버 플로우가 알려진 보안 위험 운영 시스템을 이용하여) 발생하거나 (예를 들어, 여러 시나리오에서 발생할 수 있습니다하십시오 회사의 소재지에 물리적으로 액세스 할 수있는 사람, 자신의 휴대 전화를 훔쳐 책은, 포털 로그인 무력 만들 수있는 회사 직원의 이름으로 목록을.뿐만 아니라, 이메일 생성 된 PDF 파일을 다운로드 포함 된 링크를 클릭하도록 유인하기 위해 모든 직원에게 전송, 이러한 문서) 직원의 컴퓨터를 위험에 빠뜨릴 것이다. 때 악의적 인 특정 기업을위한 사람, 멀티 시나리오는 규범이다.

· 후 사용 단계 : 목표에 대해 조치. 또이 문제는 일반적으로 이해하기 때문에 잘못 "누설 단계"(exfiltration 단계),이라고 만 유일한 목적와 같은 민감한 정보를 도용하는 (예 : 로그인 정보, 개인 정보와 금융 정보 등)하지만, 일반적으로 아래 다른 가지고있는 목표를. 예를 들어,이 단계에 집중해야 가능한 배우의 수.

가장 진보 (세로 업그레이드)에 대한 액세스를 강화하고 여러 개의 계정 (수평 에스컬레이션)을 파괴하려고 *** 가장 일반적으로 사용되는 활동.

· 후 사용 : 지속성. 경우 네트워크 나 시스템이 가치로,이 값은 계속 가능성이 높습니다 에서 성장한다. 이 있어야 계속 사람들이 위험에 노출 된 시스템 사이의 통신을 유지하기 위해. 이다보기의 보호의 관점에서 체인을 감지 죽일 수있는 가장 쉬운 부분.

시도 네트워크 또는 시스템 별 데이터, 체인을 죽일은 행동의 기본 모델. 메타 모델로, 어떤 개인 또는 상업적 흡수 할 수있는 시험 방법을. 그러나 이러한 방법도 다르다, 그래서 '전략적 수준에서 네트워크에 얼마나 근접 걱정이야. *** 그 활동이 초점은 레이아웃과 책의 내용을 안내 할 것입니다.

1.4 칼리 리눅스 소개 - 역사와 목적

칼리 리눅스 (칼리)를 역 추적에서 상속 테스트 플랫폼, BackTrack은 일반적으로 안전 테스트 데이터 및 음성 네트워크 사실상의 표준 장비로 간주됩니다. 그것은 마티 Aharoni 데본 컨스 공동 개발로 구성되어 보안 도구. 개발의 칼리 과정은 다음과 같습니다 :

· 2013년 3월는 *** 테스트하는 새로운 도구에 BackTrack의 교체 데비안 GNU / 리눅스 칼리 리눅스 오픈 소스 기반 시스템.

· 칼리 1.1.0 (2015 니안 2 ~ 9 월) : - 58이 무선 주입 패치 ***, 무선 드라이브, 3.18로 변경 칼리의 커널 패치를 업그레이드 2 년 만에 처음이다 고정 버그. 다른 버전은 선택적으로 할 일부 프로그램 1.1.0a 칼리을 장착 할 수 있습니다.

· 칼리는 2.0 (2015 니안 8-11 년 5 월) :이 지금 롤링 유통, UI에 큰 변화는 주요 릴리스입니다. 당신은 새 버전 칼리 2.0 이전 버전에서 업데이트 할 수 있습니다.

· 칼리 2016.1 (2016 니안 1 내지 21의 월) : 첫 번째 칼리을 소개했다. 커널 4.3 그놈의 최신 릴리스 버전 3.18.

· 칼리 2016.2 (2,016 니안 8 31 MAR) : 칼리 압연 번째 버전. 커널 4.6 그놈 3.20.2 업데이트는 몇 가지 버그를 해결합니다.

칼리 2.0 다른 기능은 다음과 같습니다 :

300 개 이상 포함하는 테스트, 데이터 과학 수사와 방어 도구를. 그들은 일부 무선 패킷 주입을 허용, 하드웨어 및 무선 커널 패치에 의해 지원됩니다 .

같은 그놈, KDE, LXDE 및 XFCE 같은 데스크톱 환경의 다양한 지원, 여러 언어를 지원합니다.

데비안 데비안 저장소 동기화 도구의 지원 적어도 하루에 네 번, 업데이트 패키지 및 지원 패키지 보안은 쉽게 해결합니다.

·이 개발을위한 안전한 환경과 GPG 패키지 및 REPOS을 체결했다.

지원 ISO 사용자 정의를 위해, 즉, 사용자가 칼리의 자신의 버전을 만들 수 있습니다. 기능도 엔터프라이즈 급 네트워크의 설치를 수행 할 수 부트 스트랩, 당신은 이전 시드 파일로 설치를 자동화 할 수 있습니다.

·은 ARM 기반의 시스템이 더 일반화로, 점점 더 낮은 비용, 지원 ARMEL과 칼리의 ARMHF는 rk3306mk / ss808로, 다음과 같은 장비에 설치 될 수 있도록, 라즈베리 파이, ODROID U2 / X2, 삼성 크롬 북, EfikaMX, Beaglebone 블랙, CuBox 갤럭시 노트 10.1.

· 칼리는 무료 오픈 소스 프로젝트를 유지합니다. 가장 중요한 것은 온라인 지원의 활성 사용자 기반하고있다.

칼리 리눅스의 목적은 보호하고 *** 테스터를위한 통합 플랫폼을 제공하기 위해 모든 도구를 통합하는 것이다.

칼리 리눅스 1.5 설치 및 업데이트

우리는 칼리에 대한 지식 *** 관련을 소개합니다. 이제 칼리 리눅스는 더욱 완벽하게 될 다른 설치 방법 및 업데이트 기술을 설명합니다.

휴대용 장치 칼리 리눅스 1.6 사용

휴대용 장치에 칼리 리눅스 설치는 매우 간단합니다. 어떤 경우에는, 고객은 외부 노트북을 사용하는 보안 시설 내에서 허용되지 않습니다. 이 경우 클라이언트는 일반적으로 스캔 테스트 컴퓨터 취약점 테스터에 제공됩니다. 취약성 테스트와 RTE는 휴대용 장치에서 실행 칼리 리눅스는 더 많은 혜택이있는 경우 :

• 주머니에 USB 또는 모바일 장치, 칼리를 사용하는 경우.

· 호스트 운영 체제에 대한 변경 사항은, 칼리는 직접 실행할 수 없습니다.

• 사용자 정의 칼리 리눅스를 구축하고, 심지어 메모리를 치료 할 수 있습니다.

휴대용 칼리에 윈도우 PC에서 USB 컨버터는 세 단계를 포함하는 간단한 과정이다 :

1) 칼리 리눅스 이미지가 공식 URL 다운로드 http://docs.kali.org/introduction/download-official-kali-linux-images을 .

2) 다운로드 Win32Disk 이미 저입니다 : https://sourceforge.net/projects/win32diskimager/ .

관리자로 3) 열기 Win32Disk 이미 저. 사용할 수있는 PC의 USB 포트에 연결 USB 드라이브, 당신은 그림 1.2에 표시된 인터페이스를 볼 수 있습니다. 올바른 드라이브 이름을 선택하고 쓰기를 누릅니다.

칼리 + 리눅스 구축 -------- 환경

一旦完成,退出Win32Disk Imager,并安全移出USB。现在Kali Linux已经在便携式设备上准备好了,并可以插入任何笔记本电脑来直接启动。如果主机操作系统是Linux,则可以通过两个标准命令来实现,即--sudofdisk-1和dd if=kali linux.iso of=/dev/nameofthedrive bs=512k。前者将显示驱动器上安装的所有磁盘;对于后者,如果用于输入文件,dd命令行执行转换和复制,of是指输出文件,bs是指块大小。

1.7 将Kali安装到虚拟机中

本节将深入了解如何将Kali安装到VMware Workstation Player和Oracle VirtualBox中。

VMware Workstation Player

VMware Workstation Player以前称为VMware Player,可供个人免费使用。在主机操作系统中,VMware虚拟机作为桌面应用程序存在,允许商用。该应用程序可以从URL http://www.vmware.com/products/player/playerpro-evaluation.html 下载。

接下来,介绍将Kali Linux逐步安装到VMware Workstation Player中的过程。

一旦将文件下载到主机操作系统中,只需单击Open the executable(打开可执行文件)即可看到如图1.3所示的屏幕截图。
칼리 + 리눅스 구축 -------- 환경
下一步是接受最终用户许可协议,单击Next,直至获得如图1.4所示的屏幕,屏幕显示了在主机操作系统上成功安装了VMware。

下一步将Kali Linux安装到VMware,我们已经从官方的Kali Linux下载了文件,现在点击Create a NewVirtual machine(创建新的虚拟机)并选择Installer disc image file(iso)(安装磁盘映像文件)。浏览下载的ISO文件,然后单击Next。现在可以输入所选择的名称(例如,HackBox),并选择要存储VMware映像的自定义位置。单击Next,然后指定运行Kali的最小磁盘容量(推荐为10GB),然后单击Next直到完成所有设置。完成后,应该可以看到如图1.5所示的屏幕。
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
可以选择将Kali Linux安装到主机操作系统或将其作为实时映像运行。一旦完成所有安装步骤,就可以从VMware成功启动Kali Linux,如图1.6所示。
칼리 + 리눅스 구축 -------- 환경
注意: Sana存储库从新版本的kali-linux 2016.2中删除。Sana是由包组成的存储库的代码名称。所以建议安装/启动Kali Linux后的第一步是运行apt-get update,以便更新sources.lst文件。

VirtualBox

VirtualBox类似于VMware Workstation Player,它是一个完全开源的虚拟机管理程序,也是可以从主机操作系统运行任何虚拟机的免费桌面应用程序。可以从https://www.Virtualbox.org/wiki/Downloads 下载VirtualBox。

现在将在VirtualBox上安装Kali。与VMware类似,将执行所下载的可执行文件,这些可执行文件将引导我们进入如图1.7所示的屏幕。
칼리 + 리눅스 구축 -------- 환경
一旦点击Next,VirtualBox应该提供自定义选项选择不同的存储方式,默认情况下,我们将选择VirtualBox Application,如图1.8所示。
点击Next,可以看到安装进度,如图1.9所示。

图1.10提供了成功安装Oracle VirtualBox的确认信息。
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
下一步是将Kali Linux安装到VirtualBox中。点击菜单中的New,出现如图1.11所示的屏幕,可以输入所选择的名称,并选择平台的正确版本。例如,根据我们下载的ISO映像,选择64位Debian或32位Debian。

单击Next,并提供Kali所需的RAM大小。我们建议RAM至少为1GB。通过点击Next,将在主机操作系统上为Kali Linux创建一个虚拟硬盘。单击Next选择硬盘文件类型,大多选择VDI(Virtualbox Disk Image),如图1.12所示。
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
点击Next,创建硬盘的大小,如图1.13所示。

最后,我们必须到Hackbox|Settings中,将ISO映像加载为外部驱动,如图1.14所示。
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
现在应该可以看到以下截图,已成功安装Kali Linux到VirtualBox,如图1.15所示。
칼리 + 리눅스 구축 -------- 환경

1.8 将Kali安装到Docker设备

Docker是一个开源项目,旨在即时自动部署软件容器和应用程序。Docker还在Linux上提供了操作系统级的虚拟化附加抽象和自动化层。

Docker适用于Windows,MacOS、Linux、AWS(Amazon Web Services)和Azure。在Windows中,可从https://download.docker.com/win/stable/InstallDocker.msi 下载Docker。

以下步骤显示如何在Windows 10中安装Docker,如图1.16所示:
칼리 + 리눅스 구축 -------- 환경
安装Docker到Windows,需要使用Microsoft Windows上的Hyper-V功能。如果没有启用Hyper-V,很可能会看到如图1.17所示的界面。
一旦点击Ok,Hyper-V将由Docker应用程序启用,可以通过简单地输入docker命令查看命令提示信息,如图1.18所示。

现在,我们已经将Docker设备安装到Windows主机操作系统。使用简单的docker pull kalilinux/kalilinux-docker命令安装Kali Linux,如图1.19所示。
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
一旦将Kali Linux下载到Docker应用程序,就可以立即从下载的Kali Docker设备运行run-t-i kalilinux/kal-linux-docker/bin/bash,如图1.20所示。
칼리 + 리눅스 구축 -------- 환경
应该能够直接从Docker运行Kali Linux。另外,请注意,Docker在后台使用VirtualBox环境。因此,它是通过Docker设备在VirtualBox上运行的虚拟机。

1.9 将Kali安装到云——创建一个AWS实例

AWS是Amazon提供的一个基于云的平台,Amazon主要为客户提供随时随地的计算、存储和内容传送。测试者或可以利用AWS进行***测试,本节将介绍最简单地将Kali Linux安装到AWS中的方法,在外部命令和控制的情况下,这将非常方便。

首先,需要一个有效的AWS账户。可以通过访问https://console.aws.amazon.com/console/home 注册。

登录AWS账户后,可以看到所有的AWS服务,如图1.21所示。

第二步是在AWS上启动Kali Linux。我们将通过安装Debian操作系统来定制Kali Linux。开源社区使得在Amazon Marketplace中直接启动预配置的Kali Linux 2016.2变得非常简单。https://aws.amazon.com/marketplace/pp/B01M26MMTT 将使我们能够在几分钟内直接启动Kali Linux。

当访问该链接时,能够看到如图1.22所示的内容。

点击Accept Software Terms&Launch with 1-Click(接受软件条款并且启动)按钮,然后通过访问https://console.aws.amazon.com/ec2/v2/home?regin=us-east-1 ,来访问你的AWS控制台。现在可以通过在Launch Instance(创建实例)上选择Instance ID按钮来创建一个实例,如图1.23所示。
칼리 + 리눅스 구축 -------- 환경칼리 + 리눅스 구축 -------- 환경
为了确保只有你可以访问Kali Linux,需要创建一个键值对。现在可以使用在键值对中生成的私钥登录到你的AWS云。然后,通过从命令shell输入以下命令来登录:
칼리 + 리눅스 구축 -------- 환경
칼리 + 리눅스 구축 -------- 환경
图1.24显示了Kali已在AWS上成功安装。
칼리 + 리눅스 구축 -------- 환경
必须满足所有条款和条件才能利用AWS进行测试。在发起云主机的任何之前,必须遵守法律条款和条件。

1.10 小结

在文章中,我们介绍了不同的测试方法,以及针对实时进行测试的基于目标的测试的组织方法。我们介绍了测试人员如何在多个不同平台上使用Kali Linux来评估数据系统和网络的安全性。我们已经在不同的虚拟化平台上安装了Kali,并且看到在Windows平台上使用Docker运行Linux操作系统的快捷。

추천

출처blog.51cto.com/12407231/2443492