hacktricks/generic-methodologies-and-resources/pentesting-methodology.md

12 KiB

Pentesting Methodology

{% hint style="success" %} AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기
{% endhint %}

해킹 경력에 관심이 있고 해킹할 수 없는 것을 해킹하고 싶다면 - 우리는 채용 중입니다! (유창한 폴란드어 필기 및 구사 필요).

{% embed url="https://www.stmcyber.com/careers" %}

Pentesting Methodology

Hacktricks 로고는 @ppiernacho에 의해 디자인되었습니다.

0- 물리적 공격

공격하고자 하는 기계에 물리적 접근이 있습니까? 물리적 공격에 대한 팁GUI 애플리케이션에서 탈출하는 방법에 대한 내용을 읽어보세요.

1 - 네트워크 내 호스트 발견/ 회사의 자산 발견

테스트내부 테스트인지 외부 테스트인지에 따라 회사 네트워크 내 호스트를 찾는 것(내부 테스트) 또는 인터넷에서 회사의 자산을 찾는 것(외부 테스트)에 관심이 있을 수 있습니다.

{% hint style="info" %} 외부 테스트를 수행하는 경우, 회사의 내부 네트워크에 접근하게 되면 이 가이드를 다시 시작해야 합니다. {% endhint %}

2- 네트워크와 재미있게 놀기 (내부)

이 섹션은 내부 테스트를 수행하는 경우에만 적용됩니다.
호스트를 공격하기 전에 네트워크에서 자격 증명을 훔치거나 데이터를 스니핑하여 수동/능동적으로(MitM) 네트워크 내에서 무엇을 찾을 수 있는지 알아보는 것이 좋습니다. Pentesting Network를 읽어보세요.

3- 포트 스캔 - 서비스 발견

호스트에서 취약점을 찾을 때 가장 먼저 해야 할 일은 어떤 서비스가 어떤 포트에서 실행되고 있는지 아는 것입니다. 호스트의 포트를 스캔하는 기본 도구를 살펴보겠습니다.

4- 서비스 버전 익스플로잇 검색

어떤 서비스가 실행되고 있는지, 그리고 아마도 그 버전을 알게 되면 알려진 취약점을 검색해야 합니다. 운이 좋으면 쉘을 제공하는 익스플로잇이 있을 수 있습니다...

5- Pentesting 서비스

실행 중인 서비스에 대한 멋진 익스플로잇이 없다면, 각 서비스에서 일반적인 잘못된 구성을 찾아야 합니다.

이 책에서는 가장 일반적인 서비스에 대한 펜테스트 가이드를 찾을 수 있습니다 (그리고 그렇게 일반적이지 않은 서비스도 포함되어 있습니다). 왼쪽 인덱스에서 **PENTESTING 섹션을 검색하세요 (서비스는 기본 포트에 따라 정렬되어 있습니다).

특히 Pentesting Web 부분에 특별히 언급하고 싶습니다 (가장 방대하기 때문입니다).
또한 소프트웨어에서 알려진 취약점을 찾는 방법에 대한 작은 가이드를 여기에서 찾을 수 있습니다.

서비스가 인덱스에 없다면, Google에서 다른 튜토리얼을 검색하세요 그리고 추가해 달라고 알려주세요. Google에서 아무것도 찾을 수 없다면, 자신의 블라인드 펜테스트를 수행하세요, 서비스에 연결하고, 퍼징하고, 응답을 읽는 것(있다면)으로 시작할 수 있습니다.

5.1 자동 도구

자동 취약점 평가를 수행할 수 있는 여러 도구도 있습니다. **Legion을 시도해 보기를 권장합니다. 이 도구는 제가 만든 도구로, 이 책에서 찾을 수 있는 펜테스트 서비스에 대한 노트를 기반으로 합니다.

5.2- 서비스 브루트 포스

일부 시나리오에서는 브루트 포스서비스를 타협하는 데 유용할 수 있습니다. 여기에서 다양한 서비스의 브루트 포싱 치트 시트를 찾으세요.

6- 피싱

이 시점에서 흥미로운 취약점을 찾지 못했다면, 네트워크에 침투하기 위해 피싱을 시도해야 할 수도 있습니다. 제 피싱 방법론을 여기에서 읽어보세요:

7- 쉘 얻기

어쨌든 피해자에게 코드를 실행할 방법을 찾아야 합니다. 그러면 역 쉘을 얻기 위해 시스템 내에서 사용할 수 있는 가능한 도구 목록이 매우 유용할 것입니다.

특히 Windows에서는 안티바이러스를 피하는 데 도움이 필요할 수 있습니다: 이 페이지를 확인하세요.\

8- 내부

쉘에 문제가 있는 경우, 펜테스터에게 가장 유용한 명령어의 작은 모음집을 여기에서 찾을 수 있습니다:

9 - 정보 유출

피해자로부터 데이터를 추출해야 하거나 심지어 무언가를 도입해야 할 수도 있습니다 (예: 권한 상승 스크립트). 여기에서 이러한 목적에 사용할 수 있는 일반적인 도구에 대한 게시물을 찾을 수 있습니다.

10- 권한 상승

10.1- 로컬 권한 상승

박스 내에서 root/Administrator가 아닌 경우, 권한을 상승시킬 방법을 찾아야 합니다.
여기에서 리눅스 윈도우 에서 로컬 권한을 상승시키는 방법에 대한 가이드를 찾을 수 있습니다.
또한 Windows가 어떻게 작동하는지에 대한 이 페이지를 확인하세요:

Windows 및 Linux 로컬 권한 상승 경로를 열거하는 최고의 도구를 확인하는 것을 잊지 마세요: Suite PEAS

10.2- 도메인 권한 상승

여기에서 Active Directory에서 권한을 열거하고 상승시키고 지속하는 가장 일반적인 작업을 설명하는 방법론을 찾을 수 있습니다. 이것은 섹션의 하위 섹션일 뿐이지만, 이 과정은 펜테스팅/레드 팀 과제에서 매우 섬세할 수 있습니다.

11 - POST

11.1 - 약탈

호스트 내에서 더 많은 비밀번호를 찾거나 사용자의 권한으로 다른 기계에 접근할 수 있는지 확인하세요.
여기에서 Windows에서 비밀번호를 덤프하는 다양한 방법을 찾을 수 있습니다.

11.2 - 지속성

시스템을 다시 공격할 필요가 없도록 2~3가지 다른 유형의 지속성 메커니즘을 사용하세요.
여기에서 Active Directory에 대한 지속성 팁을 찾을 수 있습니다.

TODO: Windows 및 Linux에서 지속성 게시물 완료

12 - 피벗팅

수집한 자격 증명으로 다른 기계에 접근할 수 있거나, 또는 새로운 호스트를 발견하고 스캔해야 할 수도 있습니다 (펜테스팅 방법론을 다시 시작하세요) 피해자가 연결된 새로운 네트워크 내에서.
이 경우 터널링이 필요할 수 있습니다. 터널링에 대한 게시물을 여기에서 찾을 수 있습니다.
또한 Active Directory 펜테스팅 방법론에 대한 게시물을 확인해야 합니다. 거기에서 수평 이동, 권한 상승 및 자격 증명 덤프를 위한 멋진 팁을 찾을 수 있습니다.
NTLM에 대한 페이지도 확인하세요. Windows 환경에서 피벗하는 데 매우 유용할 수 있습니다.

더 많은 정보

안드로이드 애플리케이션

익스플로잇

기본 파이썬

암호화 팁

해킹 경력에 관심이 있고 해킹할 수 없는 것을 해킹하고 싶다면 - 우리는 채용 중입니다! (유창한 폴란드어 필기 및 구사 필요).

{% embed url="https://www.stmcyber.com/careers" %}

{% hint style="success" %} AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기
{% endhint %}