deel ch05
							parent
							
								
									622f1294bb
								
							
						
					
					
						commit
						fa117b6721
					
				|  | @ -0,0 +1,97 @@ | |||
| # Post-Exploitation | ||||
| 
 | ||||
| ## Pilfering | ||||
| 
 | ||||
| * retrieve useful information from machine | ||||
|     * passwords (`/etc/shadow`, `hashdump` SAM database) | ||||
|     * cryptographic keys (SSH, PGP, GPG) | ||||
| * `/etc/passwd` format: fields separated by colons | ||||
|     * `jef:$y$salty$youwish:20022:0:99999:7:::` | ||||
|         1. `jef`: username | ||||
|         2. `$1$salty$youwish`: hash id, salt and password hash | ||||
|         3. `20022`: day password was last changed (unix timestamp but in days) | ||||
|         4. `0`: minimum age of password before it can be changed again | ||||
|         5. `99999`: max age of password, after how many days password must be | ||||
|         changed | ||||
|         6. `7`: how many days before expiring the user should be warned | ||||
|         7. number of days after password expired that user should be locked out | ||||
|         (usually empty) | ||||
|         8. expiration date of account | ||||
| * moving files | ||||
|     * push file directly if firewall allows it | ||||
|     * otherwise send command to target to pull target from client | ||||
|     * use whatever protocol works best (FTP, SMB...) | ||||
|     * meterpreter supports sending files | ||||
| * Windows | ||||
|     * user credentials cached in Microsoft Credential Manager | ||||
|         * extract using credential cache dumping tools | ||||
|         * requires admin | ||||
|     * service account passwords stored encrypted in LSA secrets section of | ||||
|       registry | ||||
|         * Mimikatz `lsadump` can dump these | ||||
|     * wireless client profiles can be extracted if admin | ||||
| * other | ||||
|     * source code of services for vulnerability analysis | ||||
|     * scripts for hardcoded passwords | ||||
|     * files left behind by users that shouldn't be | ||||
|     * browser passwords | ||||
|     * machines with which machine has recently communicated (find pivot | ||||
|       targets) | ||||
|     * DNS servers | ||||
|     * web servers | ||||
|     * mail | ||||
|     * ... | ||||
| 
 | ||||
| ## Password attacks | ||||
| 
 | ||||
| * guessing | ||||
|     * generates lots of traffic | ||||
|     * can lock out accounts | ||||
|     * slower than cracking | ||||
|     * **spray attack**: try single password on list of users | ||||
| * cracking | ||||
|     * steal hashed password and compare hashes | ||||
|     * runs on attacker's machine -> stealthier | ||||
| * important for assessing security posture of network | ||||
|     1. access control evaluation | ||||
|         * assess password strength | ||||
|         * password policies | ||||
|     2. credential-based attacks | ||||
|         * **brute force**: try many combination to expose weak or default | ||||
|           passwords | ||||
|         * **dictionary**: use list of common password | ||||
|         * **credential stuffing**: use credentials from previous breaches | ||||
|     3. privilege escalation | ||||
|     4. social engineering: trick users into revealing passwords | ||||
| * MFA | ||||
|     * prevent leak of password from becoming a breach | ||||
|     * bypassing | ||||
|         * phishing or man-in-the-middle | ||||
|         * expose implementation flaws | ||||
|             * insecure methods, e.g. SMS or email | ||||
|             * session hijacking, e.g. intercepting cookies | ||||
|         * social engineering, e.g.  pose as tech support | ||||
|         * SIM swapping: get victim's phone number reassigned to new SIM card | ||||
|         * use backup codes or account recovery | ||||
|         * push notification bombing | ||||
| * using dictionaries | ||||
|     * large word list for password cracking | ||||
|     * small tailored list for password guessing | ||||
| * cracking not always needed | ||||
|     * sniff cleartext protocols | ||||
|     * keystroke logging | ||||
|     * pass-the-hash techniques use hash directly | ||||
| * clean up after pentest (don't leave cracked passwords lying around) | ||||
| * lockouts | ||||
|     * password guessing can lock accounts | ||||
|     * Windows: original admin account can't be locked out | ||||
|         * admin has SID suffix of 500 | ||||
|         * if multiple admin accounts, only 1 is safe | ||||
|     * Linux: lockouts not always configured | ||||
|         * if so, done using PAM | ||||
|         * root account not locked out by default | ||||
|     * prevention | ||||
|         * just don't guess passwords | ||||
|         * ask target personnel for info on policy | ||||
|         * create test account for pentest | ||||
|         * attempt 1 password per observation window | ||||
		Loading…
	
		Reference in New Issue