wmap 2.5.2 → 2.5.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d6489f1302aecc4bc426c93c2e4f0a717e7f908186eee6ded623b3b0dbb10c0f
4
- data.tar.gz: dc7875e566e929991dc9adce78db8dd5a47bc2643f745cea2c7b5a69f85ad8fb
3
+ metadata.gz: ae590c812b4919eb1b66841f6eb873de93727cbf8847fe6392dc19c94e4ef158
4
+ data.tar.gz: 7530a5c491a7d87289e41c4ef4b0df6f201495c107270892e5e6d22f9584da9b
5
5
  SHA512:
6
- metadata.gz: d0520926107547b5870dd20a0fc9bbc4fdd8900708602e79db47edb37e1a9e0c82c4f98ea115c5a2d8c910c366d3ec1e91819f0cac5e83d52c3fac91f28a9cc9
7
- data.tar.gz: 6358585417331756374da3f4a45a4a658cd4e59a5237bce9d2c8a0b8026683c678e49eac8f1b3e49a6f4359a2d9f8e1eb30d057424b801358f10a077f81fcd05
6
+ metadata.gz: fa9211e5e14e74a24266677b8993071f9be1e75b9387d35a36233192c885521abbb8ecd31b0b0dc2d65db4de50cb0513e0a4cd214bed18672a1cf3b1b9cd52f6
7
+ data.tar.gz: 70d6dc893be0273b16b4f8dd78d9fe4f3ec7bf5310ea0c8b299100535300053a19f8d936ac6422cffd5251d0dc2fae991eeaa41ac31f0a639d52994bf9a5d645
data/bin/RHPG CHANGED
@@ -11,7 +11,7 @@ def print_usage
11
11
  end
12
12
 
13
13
  # Lookup the site store for a domain; then return the fingger print info of the site
14
- def site_lookup(domain)
14
+ def site_tracker_lookup(domain)
15
15
  tracker=Wmap::SiteTracker.instance
16
16
  tracker.verbose=false
17
17
  #first order search
@@ -33,7 +33,7 @@ def site_lookup(domain)
33
33
  end
34
34
 
35
35
  # look up the wp site data store for a domain; then return the wp finger print info: [is_wp?,wp_ver]
36
- def wp_site_lookup(domain)
36
+ def wp_tracker_lookup(domain)
37
37
  tracker=Wmap::WpTracker.new(:verbose=>false)
38
38
  # first order
39
39
  tracker.known_wp_sites.each do |key,val|
@@ -63,7 +63,7 @@ end
63
63
 
64
64
  # perform the wpscan on a site
65
65
  def wpscan(domain)
66
- url=site_lookup(domain)[0]
66
+ url=site_tracker_lookup(domain)[0]
67
67
  return nil if url.nil?
68
68
  if url.include?("https")
69
69
  command="wpscan --disable-tls-checks --ignore-main-redirect --url=" + url + " -o " + domain + ".wpscan"
@@ -93,7 +93,7 @@ CSV.open("output.csv", "wb") do |csv|
93
93
  end
94
94
  end
95
95
  =end
96
- my_row = row + site_lookup(row[0]) + wp_site_lookup(row[0])
96
+ my_row = row + site_tracker_lookup(row[0]) + wp_tracker_lookup(row[0])
97
97
  else
98
98
  my_row = row + [nil]*10
99
99
  end
data/bin/trusts CHANGED
@@ -11,7 +11,7 @@ print_usage
11
11
  Log_dir=File.dirname(__FILE__)+'/../logs/'
12
12
  Wmap.wlog("Execute the command: trust #{ARGV[0]}","trust",Log_dir+"wmap.log")
13
13
 
14
- dt=Wmap::DomainTracker.instance.new
14
+ dt=Wmap::DomainTracker.instance
15
15
  ct=Wmap::CidrTracker.new(:verbose=>true)
16
16
  abort "Incorrect program argument! Proper usage: trust [domain | netblock]" unless ARGV.length==1 && (File.exist?(ARGV[0]))
17
17
 
data/dicts/ccsld.txt CHANGED
@@ -3,7 +3,7 @@
3
3
  # by Yang Li, Last modification date: 05/12/2013
4
4
 
5
5
  Afghanistan
6
- Domain registrations at the second-level are unrestricted, but more expensive. Third-level names have restrictions based on which second-level name they are beneath
6
+ Domain registrations at the second-level are unrestricted, but more expensive. Third-level names have restrictions based on which second-level name they are beneath
7
7
 
8
8
  .af - Registrations are taken directly at the second level or at the third level beneath the following domain extensions.
9
9
  .com.af - Commercial entities (Trade license / Business authorization or approval from the Ministry of Commerce.)
@@ -13,12 +13,12 @@ Domain registrations at the second-level are unrestricted, but more expensive. T
13
13
  .org.af - Non-commercial entities
14
14
 
15
15
  Aland Islands
16
- The country domain extension for the �land Islands is .ax. Registrants must be connected with the �land Islands.
16
+ The country domain extension for the �land Islands is .ax. Registrants must be connected with the �land Islands.
17
17
 
18
18
  .ax - Registrations are taken directly at the second-level.
19
19
 
20
20
 
21
- Note: Previously, most �land Islands websites were registered at the third level under the aland.fi subdomain (�land Islands are part of Finland).
21
+ Note: Previously, most �land Islands websites were registered at the third level under the aland.fi subdomain (�land Islands are part of Finland).
22
22
  Albania
23
23
  These are the country extensions for Albania. Registrants must be an organization with legal representative in Albania. There is a limit of one domain per organization, and it must be under an appropriate subdomain. Registrations are made at the third-level, beneath one of the following subdomains.
24
24
 
@@ -48,7 +48,7 @@ The country domain extension for American Samoa is .as. There is no restriction
48
48
  .as - Registrations are taken directly at second level.
49
49
 
50
50
  Andorra
51
- Registrations must be pre-approved by Office for State Emblems and Signs, are generally limited to residents of Andorra or Andorran trademark holders with an agent in Andorra, and the number of registrations per person is limited.
51
+ Registrations must be pre-approved by Office for State Emblems and Signs, are generally limited to residents of Andorra or Andorran trademark holders with an agent in Andorra, and the number of registrations per person is limited.
52
52
 
53
53
  .ad - Country code top-level domain (ccTLD) for Andorra. Names can be registered directly at the second level (i.e. example.ad).
54
54
  .nom.ad - Country domain extension for personal websites.
@@ -75,7 +75,7 @@ These are the country domain extensions for Anguilla. There are no restrictions
75
75
  Antarctica
76
76
  The country domain for Antarctica is .aq. This top-level domain is reserved for organizations that conduct work in Antarctica or promote the Antarctic and Southern Ocean regions. Must have physical presence in Antarctica or be a governmental organization signatory to the Antarctic Treaty.
77
77
 
78
- .aq - Registrations are taken at the second level.
78
+ .aq - Registrations are taken at the second level.
79
79
 
80
80
  Antigua and Barbuda
81
81
  These are the country domain extensions for Antigua and Barbuda. There are no restrictions on registering domain names with the .ag extension.
@@ -105,7 +105,7 @@ Although domain names must be registered at the third level, some public and gov
105
105
  Armenia
106
106
  The top-level country code for Armenia is .am. Some generic names are reserved. Except for reserved names like .com.am, .net.am, .org.am and others, any person in the world can register a .am domain for a fee. Registrations are subject to review.
107
107
 
108
- .am - Registrations are made directly at the second-level.
108
+ .am - Registrations are made directly at the second-level.
109
109
 
110
110
  Aruba
111
111
  The country domain extension for Aruba is .aw. Registrations are directly at second level, or beneath the .com.aw subdomain.
@@ -290,7 +290,7 @@ The top-level domain for Bhutan is .bt. Registrants must have a local presence i
290
290
  Bolivia
291
291
  Here are the country domain extensions for Bolivia. There are no restrictions on who can register .bo domains.
292
292
 
293
- .bo - Can be registered directly at the second-level, but this is more expensive.
293
+ .bo - Can be registered directly at the second-level, but this is more expensive.
294
294
  .com.bo - Commercial entities
295
295
  .net.bo - Network service providers
296
296
  .org.bo - Organizations
@@ -308,11 +308,11 @@ Here are the domain extensions for Bosnia and Herzegovina. To register a domain
308
308
  .org.ba - Non-profit organizations
309
309
  .net.ba - Telecommunications providers
310
310
  .edu.ba - Education
311
- .gov.ba - Any of the governments (local, regional or national)
311
+ .gov.ba - Any of the governments (local, regional or national)
312
312
  .mil.ba - Military
313
313
  .unsa.ba - University of Sarajevo
314
314
  .untz.ba - University of Tuzla
315
- .unmo.ba - University of Mostar "D�emal Bijedic"
315
+ .unmo.ba - University of Mostar "D�emal Bijedic"
316
316
  .unbi.ba - University of Bihac
317
317
  .unze.ba - University of Zenica
318
318
  .co.ba - Maintained by a company called Sayber, located in Sarajevo.
@@ -438,7 +438,7 @@ Here are the domain extensions for Burma. Note that, although there are some fun
438
438
  Burundi
439
439
  Here is the top-level domain for Burundi. Anyone in the world can register a .bi domain name, however, use for misleading purposes is discouraged.
440
440
 
441
- .bi - Registrations are taken directly at second-level or at third-level beneath one of several second-level domains.
441
+ .bi - Registrations are taken directly at second-level or at third-level beneath one of several second-level domains.
442
442
 
443
443
  Cambodia
444
444
  Here are the country code extensions for Cambodia. Note that offensive or inappropriate names may be refused registration. Registrations are at third level beneath the following second-level labels.
@@ -460,7 +460,7 @@ Here are the country domain extensions for Cameroon. Local presence is required
460
460
  Canada
461
461
  Here are the country domain extensions for Canada. To register a .ca domain name, you must meet the Canadian Presence Requirements as specified by the registry.
462
462
 
463
- .ca - registrants can either register their domain names directly at the second-level, or at the third-level, under one of the (geographic) second-level domains below.
463
+ .ca - registrants can either register their domain names directly at the second-level, or at the third-level, under one of the (geographic) second-level domains below.
464
464
  .ab.ca - Alberta
465
465
  .bc.ca - British Columbia
466
466
  .mb.ca - Manitoba
@@ -481,7 +481,7 @@ Examples of entities that meet the Canadian Presence Requirements include:
481
481
  a Canadian citizen of the age of majority,
482
482
  a permanent resident of Canada,
483
483
  a legally recognized Canadian organization,
484
- an Inuit, First Nation, M�tis or other people indigenous to Canada,
484
+ an Inuit, First Nation, M�tis or other people indigenous to Canada,
485
485
  an Indian Band as defined in the Indian Act of Canada,
486
486
  a foreign resident of Canada that holds a registered Canadian trademark,
487
487
  An executor, administrator or other legal representative of a person or organization that meets the requirements,
@@ -508,15 +508,15 @@ Here's the top-level domain for the Central African Republic. It is intended for
508
508
 
509
509
  .cf - Domain registrations are done directly at the second-level
510
510
 
511
- Chad (French: Tchad)
511
+ Chad (French: Tchad)
512
512
  Here is the top-level domain for Chad. There are no restrictions on registering domain names with this extension.
513
513
 
514
514
  .td - Registrations are made directly at the second-level. Note that registrations were not accepted by the registry at the time of writing.
515
515
 
516
516
  Chile
517
- Here are the domain extensions for Chile. Anyone can register a .cl domain name, however a foreign registration must have a domestic representative who has a RUT (RUT, which stands for Rol �nico Tributario, is the Chilean national identification number).
517
+ Here are the domain extensions for Chile. Anyone can register a .cl domain name, however a foreign registration must have a domestic representative who has a RUT (RUT, which stands for Rol �nico Tributario, is the Chilean national identification number).
518
518
 
519
- .cl - Registrations are made directly at the second level (except for government sites, as indicated below).
519
+ .cl - Registrations are made directly at the second level (except for government sites, as indicated below).
520
520
  .gov.cl - For government websites.
521
521
  .gob.cl - For government websites.
522
522
 
@@ -617,7 +617,7 @@ Here's the top-level domain for the Democratic Republic of the Congo. There is n
617
617
  Congo, Republic of the
618
618
  Here's the top-level domain for the Republic of Congo. Registration is unrestricted - anyone can register a domain name under this extension. Republic of the Congo citizens get one free domain name registration.
619
619
 
620
- .cg - Registration is done directly at the second-level.
620
+ .cg - Registration is done directly at the second-level.
621
621
 
622
622
  Cook Islands
623
623
  Here are the domain extensions for the Cook Islands.
@@ -647,8 +647,8 @@ Here are the domain name extensions for Costa Rica. There are varying restrictio
647
647
  .or.cr - Non-profit organizations
648
648
  .sa.cr - Health related institutions
649
649
 
650
- C�te d'Ivoire
651
- Here's the top-level domain for C�te d'Ivoire. Registrants name must match official name of company, organization, or trademark.
650
+ C�te d'Ivoire
651
+ Here's the top-level domain for C�te d'Ivoire. Registrants name must match official name of company, organization, or trademark.
652
652
 
653
653
  .ci - Registrations are made directly at the second level, or at third level beneath some second-level domain.
654
654
 
@@ -658,9 +658,9 @@ Here's the country code top-level domain for Croatia. Registration is limited to
658
658
  .hr - Domain registrations are taken directly at the second level, or under various subdomains such as .com.hr and .iz.hr.
659
659
 
660
660
  Cuba
661
- Here's the top-level domain for Cuba. Registrations are limited to people and companies located in Cuba. Also, third-level registrations may have other limitations based on which second-level domain they are within.
661
+ Here's the top-level domain for Cuba. Registrations are limited to people and companies located in Cuba. Also, third-level registrations may have other limitations based on which second-level domain they are within.
662
662
 
663
- .cu - May register at second-level or at the third-level, beneath generic second-level domains.
663
+ .cu - May register at second-level or at the third-level, beneath generic second-level domains.
664
664
 
665
665
  Cyprus, Republic of
666
666
  Limited to Cyprus residents and registered companies/organizations. There are further restrictions for different subdomains
@@ -682,17 +682,17 @@ Limited to Cyprus residents and registered companies/organizations. There are fu
682
682
  Czech Republic
683
683
  Here is the domain extension for the Czech Republic. Businesses must provide tax registration number when registering a domain name with this extension.
684
684
 
685
- .cz - Domain names can be registered directly at second level.
685
+ .cz - Domain names can be registered directly at second level.
686
686
 
687
687
  Denmark
688
688
  Here's the top-level domain for Denmark. There are no restrictions on who can register domain names with this extension.
689
689
 
690
- .dk - Domain names can be registered directly at second level.
690
+ .dk - Domain names can be registered directly at second level.
691
691
 
692
692
  Djibouti
693
693
  Here's the top-level domain for Djbouti. There are no restrictions on who can register domain names with this extension, although some names are reserved or subject to famous trademark owners having first registration rights.
694
694
 
695
- .dj - Domain names can be registered directly at second level.
695
+ .dj - Domain names can be registered directly at second level.
696
696
 
697
697
  Dominica
698
698
  Here are the domain extensions for Dominica. There are no restrictions on who can register domain names with this extension. Third-level names in .com.dm, .net.dm, and .org.dm are included automatically upon registration of all .dm domain names.
@@ -865,7 +865,7 @@ Here are the country domain extensions for French Polynesia. Local presence is r
865
865
  .pf - Registrations are accepted directly at the second-level or beneath the following subdomain.
866
866
  .com.pf
867
867
 
868
- French Southern and Antarctic Lands (France)
868
+ French Southern and Antarctic Lands (France)
869
869
  Here is the top-level domain for French Southern and Antarctic Lands. A local administrative contact with proof of address in French Southern Territory is required.
870
870
 
871
871
  .tf - Registrations are made directly at the second-level. Note that an unofficial service makes free, redirected domains available at third level.
@@ -888,7 +888,7 @@ Here is the country code top-level domain for Georgia. Domain name registrations
888
888
  Germany
889
889
  Here's the top-level domain for Germany. Registrants must have administrative contact resident in Germany.
890
890
 
891
- .de - domain names can be registered directly at second level.
891
+ .de - domain names can be registered directly at second level.
892
892
 
893
893
  Ghana
894
894
  Below are the domain extensions for Ghana. Companies wishing to use this extension must be registered in Ghana, and the domain administrator must be located there. Second-level registrations are no longer accepted. Registrations must now be at third level beneath second-level labels..
@@ -925,7 +925,7 @@ Here is the country code top-level domain for Grenada. There are no restrictions
925
925
  .gd - Domain names are registered directly at the second level.
926
926
 
927
927
  Guadeloupe
928
- Below are the domain extensions for Guadeloupe. Domain names with this extension is available worldwide but more expensive for non-Guadeloupe residents.
928
+ Below are the domain extensions for Guadeloupe. Domain names with this extension is available worldwide but more expensive for non-Guadeloupe residents.
929
929
 
930
930
  .gp - Registrations are directly at second level, or at third level beneath the following second-level categories.
931
931
  .com.gp
@@ -1096,7 +1096,7 @@ Below are the country domain extensions for Iran. These domains are generally re
1096
1096
  .sch.ir - Schools, primary and secondary education
1097
1097
 
1098
1098
  Iraq
1099
- Here are the domain extensions for Iraq. No online registrations are known to be taking place at the time of writing.
1099
+ Here are the domain extensions for Iraq. No online registrations are known to be taking place at the time of writing.
1100
1100
 
1101
1101
  .iq - General
1102
1102
  .gov.iq - Governmental entities
@@ -1138,7 +1138,7 @@ Below are the country domain extensions for Isle of Man. Restrictions apply to s
1138
1138
  Italy
1139
1139
  Here's the country code top-level domain for Italy. Registrants must be a resident of an EU country to register a domain name with this extension. Registration requires sending a paper or fax letter which must be completed in Italian.
1140
1140
 
1141
- .it - Registrations are at second level or third level under various second-level domains. Most second-level domains represent a province, region, or municipality. There is also .gov.it for government organizations.
1141
+ .it - Registrations are at second level or third level under various second-level domains. Most second-level domains represent a province, region, or municipality. There is also .gov.it for government organizations.
1142
1142
 
1143
1143
  Jamaica
1144
1144
  Below are the country domain extensions for Jamaica. There are no restrictions on who can register domain names with this extension, however, it is more expensive for non-residents. It is also cheaper for government departments and non-profit organizations. And it is free for schools and educational institutions.
@@ -1238,7 +1238,7 @@ Here are the domain extensions for South Korea. Registrants must have a local pr
1238
1238
  .re.kr - Research (Organizations or individuals)
1239
1239
  .pe.kr - Personal (Individuals)
1240
1240
  .go.kr - Government
1241
- .mil.kr - Military
1241
+ .mil.kr - Military
1242
1242
  .ac.kr - Colleges or universities
1243
1243
  .hs.kr - High schools
1244
1244
  .ms.kr - Middle schools
@@ -1248,7 +1248,7 @@ Here are the domain extensions for South Korea. Registrants must have a local pr
1248
1248
 
1249
1249
  Organizations or individuals that have connection with relevant areas:
1250
1250
 
1251
- .seoul.kr - Seoul
1251
+ .seoul.kr - Seoul
1252
1252
  .busan.kr - Busan
1253
1253
  .daegu.kr - Daegu
1254
1254
  .incheon.kr - Incheon
@@ -1829,10 +1829,10 @@ Below are the country domain extensions for Poland. There are no restrictions fo
1829
1829
  .warszawa.pl - Warsaw
1830
1830
  .wroc.pl - Wroclaw
1831
1831
  .wroclaw.pl - Wroclaw
1832
- .krakow.pl - Krak�w
1832
+ .krakow.pl - Krak�w
1833
1833
  .katowice.pl - Katowice
1834
1834
  .poznan.pl - Poznan
1835
- .lodz.pl - L�dz
1835
+ .lodz.pl - L�dz
1836
1836
  .gda.pl - Gdansk
1837
1837
  .gdansk.pl - Gdansk
1838
1838
  .slupsk.pl - Slupsk
@@ -1842,8 +1842,8 @@ Below are the country domain extensions for Poland. There are no restrictions fo
1842
1842
  .bialystok.pl - Bialystok
1843
1843
  .olsztyn.pl - Olsztyn
1844
1844
  .torun.pl - Torun
1845
- .gorzow.pl - Gorz�w Wielkopolski
1846
- .zgora.pl - Zielona G�ra
1845
+ .gorzow.pl - Gorz�w Wielkopolski
1846
+ .zgora.pl - Zielona G�ra
1847
1847
 
1848
1848
  Portugal
1849
1849
  Below are the domain extensions for Portugal. There are various restrictions for each subdomain, however the .com.pt extension is unrestricted.
@@ -1873,7 +1873,7 @@ Here are the country domain extensions for Puerto Rico. Some subdomains have res
1873
1873
  .org.pr - For organizations (but not restricted to)
1874
1874
  .pro.pr - For professionals
1875
1875
  .est.pr - For university students
1876
- .prof.pr - For university professors
1876
+ .prof.pr - For university professors
1877
1877
  .ac.pr - For academics
1878
1878
 
1879
1879
  Qatar
@@ -1907,8 +1907,8 @@ Below are the country domain extensions for Romania. There are no restrictions f
1907
1907
  .tm.ro
1908
1908
  .www.ro
1909
1909
 
1910
- R�union
1911
- Here are the country domain extensions for R�union. Registrants are required to have local presence.
1910
+ R�union
1911
+ Here are the country domain extensions for R�union. Registrants are required to have local presence.
1912
1912
 
1913
1913
  .re - Domain names are registered directly at the second-level and at the third-level under the following subdomains.
1914
1914
  .asso.re - Associations
@@ -2002,19 +2002,19 @@ Here is the top-level domain for San Marino. The domain name must be the same as
2002
2002
 
2003
2003
  .sm - Domain name registrations are made directly at the second-level.
2004
2004
 
2005
- S�o Tom� and Pr�ncipe
2006
- Here is the top-level domain for S�o Tom� and Pr�ncipe. There are no restrictions on registering domain names with this extension.
2005
+ S�o Tom� and Pr�ncipe
2006
+ Here is the top-level domain for S�o Tom� and Pr�ncipe. There are no restrictions on registering domain names with this extension.
2007
2007
 
2008
2008
  .st - Registrations are made directly at the second-level, although the following second-level domains have been reserved for future use..
2009
2009
 
2010
2010
  Reserved Second-Level Domains
2011
2011
  The following second-level domains have been reserved by the registry for future use.
2012
2012
 
2013
- .gov.st - Government of S�o Tom� and Pr�ncipe
2014
- .saotome.st - Island of S�o Tom�
2013
+ .gov.st - Government of S�o Tom� and Pr�ncipe
2014
+ .saotome.st - Island of S�o Tom�
2015
2015
  .principe.st - Island of Principe
2016
- .consulado.st - S�o Tom� and Pr�ncipe consulates
2017
- .embaixada.st - S�o Tom� and Pr�ncipe embassies
2016
+ .consulado.st - S�o Tom� and Pr�ncipe consulates
2017
+ .embaixada.st - S�o Tom� and Pr�ncipe embassies
2018
2018
  .org.st
2019
2019
  .edu.st
2020
2020
  .net.st
@@ -2220,29 +2220,29 @@ Below are the domain extensions for Sweden. Some third-level domains are restric
2220
2220
  .se - Registrations can be made directly at the second-level or under the following subdomains.
2221
2221
  .a.se - Stockholm City
2222
2222
  .b.se - Stockholm County
2223
- .ac.se - V�sterbotten County
2223
+ .ac.se - V�sterbotten County
2224
2224
  .bd.se - Norrbotten County
2225
2225
  .c.se - Uppsala County
2226
- .d.se - S�dermanland County
2227
- .e.se - �sterg�tland County
2228
- .f.se - J�nk�ping County
2226
+ .d.se - S�dermanland County
2227
+ .e.se - �sterg�tland County
2228
+ .f.se - J�nk�ping County
2229
2229
  .g.se - Kronoberg County
2230
2230
  .h.se - Kalmar County
2231
2231
  .i.se - Gotland County
2232
2232
  .k.se - Blekinge County
2233
2233
  .l.se - Kristianstad County
2234
- .m.se - Sk�ne County
2234
+ .m.se - Sk�ne County
2235
2235
  .n.se - Halland County
2236
- .o.se - V�stra G�taland County
2237
- .p.se - �lvsborg County
2236
+ .o.se - V�stra G�taland County
2237
+ .p.se - �lvsborg County
2238
2238
  .r.se - Skaraborg County
2239
- .s.se - V�rmland County
2240
- .t.se - �rebro County
2241
- .u.se - V�stmanland County
2239
+ .s.se - V�rmland County
2240
+ .t.se - �rebro County
2241
+ .u.se - V�stmanland County
2242
2242
  .w.se - Dalarna County
2243
- .x.se - G�vleborg County
2244
- .y.se - V�sternorrland County
2245
- .z.se - J�mtland County
2243
+ .x.se - G�vleborg County
2244
+ .y.se - V�sternorrland County
2245
+ .z.se - J�mtland County
2246
2246
  .org.se - Non-profit Organizations
2247
2247
  .pp.se - Private Persons
2248
2248
  .tm.se - Trade Marks
@@ -2270,7 +2270,7 @@ Below are the domain extensions for Syria. There are no restrictions on register
2270
2270
  Taiwan (Republic of China)
2271
2271
  Below are the country domain extensions for Taiwan. Requirements vary depending on which second-level name registration is within. Non-residents are allowed to register domain names under several subdomains.
2272
2272
 
2273
- .tw - Unrestricted. Registrations are made directly at second level and beneath the following subdomains.
2273
+ .tw - Unrestricted. Registrations are made directly at second level and beneath the following subdomains.
2274
2274
  .edu.tw - For educational and academic institutions
2275
2275
  .gov.tw - For Republic of China government agencies
2276
2276
  .mil.tw - For the Military of the Republic of China
@@ -2423,7 +2423,7 @@ Here is the top-level domain for Turks and Caicos Islands. There are no restrict
2423
2423
  Tuvalu
2424
2424
  Here is the country code top-level domain for the island nation of Tuvalu. There are no restrictions on the second-level domain names, however, some second-level names are reserved (i.e. .com.tv, .net.tv, .org.tv, .gov.tv). The .tv domain has been a popular choice for websites for television shows.
2425
2425
 
2426
- .tv - Registrations are directly at the second-level.
2426
+ .tv - Registrations are directly at the second-level.
2427
2427
 
2428
2428
  Uganda
2429
2429
  Below are the domain extensions for Uganda. There are no restrictions on registering domain names with this extension.
@@ -2450,7 +2450,7 @@ Here are the domain extensions for Ukraine. To register a domain name, the regis
2450
2450
  United Arab Emirates
2451
2451
  These are the country domain extensions for the United Arab Emirates. Second-level registrations are generally unrestricted. Third-level registrations require local presence and documentation (business registration), and if applicable, certificate from relevant ministry (for org, mil, gov, sch and ac).
2452
2452
 
2453
- .ae - Companies, Organizations or Individuals. Domain names can be registered directly at the second-level or at the third-level, under one of the following extensions.
2453
+ .ae - Companies, Organizations or Individuals. Domain names can be registered directly at the second-level or at the third-level, under one of the following extensions.
2454
2454
  .co.ae - Companies -- was deprecated by UAEnic in 2003 and reintroduced by .aeDA (domain registrar for the .ae ccTLD) in 2008
2455
2455
  .net.ae - Network Providers
2456
2456
  .gov.ae - Government and Ministries
@@ -2477,6 +2477,9 @@ Below are the country domain extensions for the United Kingdom (UK). There are n
2477
2477
  .plc.uk - Public limited companies
2478
2478
  .police.uk - Police
2479
2479
  .sch.uk - Local education authorities, schools, primary and secondary education, community education
2480
+ .gb.net - UK specific
2481
+ .uk.com - UK specific
2482
+ .uk.net - UK specific
2480
2483
 
2481
2484
  United States of America
2482
2485
  Below are the country domain extensions for the United States. Registrants of .us domains must be United States citizens, residents, or organizations, or a foreign entity with a presence in the United States. Originally registrations were within third or fourth level hierarchy, but currently direct second-level registrations are allowed. Also, the kids.us extension allows third-level registrations for child-friendly sites.
@@ -2630,7 +2633,7 @@ Here are the domain extensions for Yemen. Registrants must have a local contact
2630
2633
  .net.ye - Network Providers
2631
2634
  .org.ye - Non-commercial Organizations
2632
2635
  .plc.ye
2633
- .gov.ye - Government and Governmental System
2636
+ .gov.ye - Government and Governmental System
2634
2637
 
2635
2638
  Zambia
2636
2639
  Here are the domain extensions for Zambia. Local presence is required to register domain names with this extension.
@@ -32,282 +32,266 @@ class Wmap::UrlChecker
32
32
 
33
33
  # Main worker method to perform various checks on the URL / site
34
34
  def url_worker (url)
35
- begin
36
- puts "Checking out an unknown URL: #{url}" if @verbose
37
- url=url.strip.downcase
38
- raise "Invalid URL format: #{url}" unless is_url?(url)
39
- timestamp=Time.now
40
- host=url_2_host(url)
41
- ip=host_2_ip(host)
42
- port=url_2_port(url)
43
- code=10000
44
- if @url_code.key?(url)
45
- code=@url_code[url]
46
- else
47
- code=response_code(url)
48
- end
49
- if code>=300 && code < 400
50
- loc=landing_location(4,url)
51
- else
52
- loc=nil
53
- end
54
- if @url_finger_print.key?(url)
55
- fp=@url_finger_print[url]
56
- else
57
- fp=response_body_md5(url)
58
- end
59
- if @url_server.key?(url)
60
- server=@url_server[url]
61
- else
62
- server=get_server_header(url)
63
- end
64
- # save the data
65
- checker=Hash.new
66
- checker['ip']=ip
67
- checker['port']=port
68
- checker['url']=url
69
- checker['code']=code
70
- checker['redirection']=loc
71
- checker['md5']=fp
72
- checker['server']=server
73
- checker['timestamp']=timestamp
74
- if Wmap::CidrTracker.new(:data_dir=>@data_dir).ip_trusted?(ip)
75
- checker['status']="int_hosted"
76
- else
77
- checker['status']="ext_hosted"
78
- end
79
- return checker
80
- rescue OpenSSL::SSL::SSLError => es # handler to temporally hold the openssl bug in bay: SSL_set_session: unable to find ssl method
81
- checker=Hash.new
82
- checker['ip']=ip
83
- checker['port']=port
84
- checker['url']=url
85
- checker['code']=20000
86
- checker['server']="Unknown SSL error: #{es}"
87
- checker['md']=nil
88
- checker['redirection']=nil
89
- checker['timestamp']=timestamp
90
- return checker
91
- rescue Exception => ee
92
- puts "Exception on method #{__method__} for #{url}: #{ee}" # if @verbose
93
- return nil
35
+ puts "Checking out an unknown URL: #{url}" if @verbose
36
+ url=url.strip.downcase
37
+ raise "Invalid URL format: #{url}" unless is_url?(url)
38
+ timestamp=Time.now
39
+ host=url_2_host(url)
40
+ ip=host_2_ip(host)
41
+ port=url_2_port(url)
42
+ code=10000
43
+ if @url_code.key?(url)
44
+ code=@url_code[url]
45
+ else
46
+ code=response_code(url)
47
+ end
48
+ if code>=300 && code < 400
49
+ loc=landing_location(4,url)
50
+ else
51
+ loc=nil
52
+ end
53
+ if @url_finger_print.key?(url)
54
+ fp=@url_finger_print[url]
55
+ else
56
+ fp=response_body_md5(url)
57
+ end
58
+ if @url_server.key?(url)
59
+ server=@url_server[url]
60
+ else
61
+ server=get_server_header(url)
94
62
  end
63
+ # save the data
64
+ checker=Hash.new
65
+ checker['ip']=ip
66
+ checker['port']=port
67
+ checker['url']=url
68
+ checker['code']=code
69
+ checker['redirection']=loc
70
+ checker['md5']=fp
71
+ checker['server']=server
72
+ checker['timestamp']=timestamp
73
+ if Wmap::CidrTracker.new(:data_dir=>@data_dir).ip_trusted?(ip)
74
+ checker['status']="int_hosted"
75
+ else
76
+ checker['status']="ext_hosted"
77
+ end
78
+ return checker
79
+ rescue OpenSSL::SSL::SSLError => es # handler to temporally hold the openssl bug in bay: SSL_set_session: unable to find ssl method
80
+ checker=Hash.new
81
+ checker['ip']=ip
82
+ checker['port']=port
83
+ checker['url']=url
84
+ checker['code']=20000
85
+ checker['server']="Unknown SSL error: #{es}"
86
+ checker['md']=nil
87
+ checker['redirection']=nil
88
+ checker['timestamp']=timestamp
89
+ return checker
90
+ rescue Exception => ee
91
+ puts "Exception on method #{__method__} for #{url}: #{ee}" # if @verbose
92
+ return nil
95
93
  end
96
94
  alias_method :check, :url_worker
97
95
 
98
96
  # Parallel scanner - by utilizing fork manager 'parallel' to spawn numbers of child processes on multiple urls simultaneously
99
97
  def url_workers (targets,num=@max_parallel)
100
- begin
101
- results=Array.new
102
- targets -= ["", nil]
103
- if targets.size > 0
104
- puts "Start the url checker on the targets:\n #{targets}"
105
- Parallel.map(targets, :in_processes => num) { |target|
106
- url_worker(target)
107
- }.each do |process|
108
- if process.nil?
109
- next
110
- elsif process.empty?
111
- #do nothing
112
- else
113
- results << process
114
- end
98
+ results=Array.new
99
+ targets -= ["", nil]
100
+ if targets.size > 0
101
+ puts "Start the url checker on the targets:\n #{targets}"
102
+ Parallel.map(targets, :in_processes => num) { |target|
103
+ url_worker(target)
104
+ }.each do |process|
105
+ if process.nil?
106
+ next
107
+ elsif process.empty?
108
+ #do nothing
109
+ else
110
+ results << process
115
111
  end
116
112
  end
117
- return results
118
- rescue Exception => ee
119
- puts "Exception on method #{__method__}: #{ee}" if @verbose
120
- return nil
121
113
  end
114
+ return results
115
+ rescue Exception => ee
116
+ puts "Exception on method #{__method__}: #{ee}" if @verbose
117
+ return nil
122
118
  end
123
119
  alias_method :checks, :url_workers
124
120
 
121
+ =begin
125
122
  # Test the URL and return the response code
126
123
  def response_code (url)
127
124
  puts "Check the http response code on the url: #{url}" if @verbose
128
- response_code = 10000 # All unknown url connection exceptions go here
129
- begin
130
- raise "Invalid url: #{url}" unless is_url?(url)
131
- url=url.strip.downcase
132
- timeo = @http_timeout/1000.0
133
- uri = URI.parse(url)
125
+ code = 10000 # All unknown url connection exceptions go here
126
+ raise "Invalid url: #{url}" unless is_url?(url)
127
+ url=url.strip.downcase
128
+ timeo = @http_timeout/1000.0
129
+ uri = URI.parse(url)
130
+ http = Net::HTTP.new(uri.host, uri.port)
131
+ http.open_timeout = timeo
132
+ http.read_timeout = timeo
133
+ if (url =~ /https\:/i)
134
+ http.use_ssl = true
135
+ #http.ssl_version = :SSLv3
136
+ # Bypass the remote web server cert validation test
137
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
138
+ end
139
+ request = Net::HTTP::Get.new(uri.request_uri)
140
+ response = http.request(request)
141
+ puts "Server response the following: #{response}" if @verbose
142
+ code = response.code.to_i
143
+ #response.finish if response.started?()
144
+ @url_code[url]=code
145
+ puts "Response code on #{url}: #{code}" if @verbose
146
+ return code
147
+ rescue Exception => ee
148
+ puts "Exception on method #{__method__} for #{url}: #{ee}" if @verbose
149
+ case ee
150
+ # rescue "Connection reset by peer" error type
151
+ when Errno::ECONNRESET
152
+ code=104
153
+ when Errno::ECONNABORTED,Errno::ETIMEDOUT
154
+ #code=10000
155
+ when Timeout::Error # Quick fix
156
+ if (url =~ /https\:/i) # try again for ssl timeout session, in case of default :TLSv1 failure
157
+ http.ssl_version = :SSLv3
158
+ response = http.request(request)
159
+ code = response.code.to_i
160
+ unless code.nil?
161
+ @ssl_version = http.ssl_version
162
+ end
163
+ end
164
+ else
165
+ #code=10000
166
+ end
167
+ @url_code[url]=code
168
+ return code
169
+ end
170
+
171
+ # Test the URL / site and return the redirection location (3xx response code only)
172
+ def redirect_location (url)
173
+ puts "Test the redirection location for the url: #{url}" if @verbose
174
+ location=""
175
+ raise "Invalid url: #{url}" unless is_url?(url)
176
+ url=url.strip.downcase
177
+ timeo = @http_timeout/1000.0
178
+ uri = URI.parse(url)
179
+ code = response_code (url)
180
+ if code >= 300 && code < 400
134
181
  http = Net::HTTP.new(uri.host, uri.port)
135
182
  http.open_timeout = timeo
136
183
  http.read_timeout = timeo
137
184
  if (url =~ /https\:/i)
138
185
  http.use_ssl = true
139
- #http.ssl_version = :SSLv3
140
186
  # Bypass the remote web server cert validation test
141
187
  http.verify_mode = OpenSSL::SSL::VERIFY_NONE
188
+ http.ssl_version = @ssl_version
142
189
  end
143
190
  request = Net::HTTP::Get.new(uri.request_uri)
144
191
  response = http.request(request)
145
- puts "Server response the following: #{response}" if @verbose
146
- response_code = response.code.to_i
147
- #response.finish if response.started?()
148
- @url_code[url]=response_code
149
- puts "Response code on #{url}: #{response_code}" if @verbose
150
- return response_code
151
- rescue Exception => ee
152
- puts "Exception on method #{__method__} for #{url}: #{ee}" if @verbose
153
- case ee
154
- # rescue "Connection reset by peer" error type
155
- when Errno::ECONNRESET
156
- response_code=104
157
- when Errno::ECONNABORTED,Errno::ETIMEDOUT
158
- #response_code=10000
159
- when Timeout::Error # Quick fix
160
- if (url =~ /https\:/i) # try again for ssl timeout session, in case of default :TLSv1 failure
161
- http.ssl_version = :SSLv3
162
- response = http.request(request)
163
- response_code = response.code.to_i
164
- unless response_code.nil?
165
- @ssl_version = http.ssl_version
166
- end
167
- end
168
- else
169
- #response_code=10000
192
+ puts "Response: #{response}" if @verbose
193
+ case response
194
+ when Net::HTTPRedirection then
195
+ location = response['location']
170
196
  end
171
- @url_code[url]=response_code
172
- return response_code
173
- end
174
- end
175
- alias_method :query, :response_code
176
-
177
- # Test the URL / site and return the redirection location (3xx response code only)
178
- def redirect_location (url)
179
- begin
180
- puts "Test the redirection location for the url: #{url}" if @verbose
181
- location=""
182
- raise "Invalid url: #{url}" unless is_url?(url)
183
- url=url.strip.downcase
184
- timeo = @http_timeout/1000.0
185
- uri = URI.parse(url)
186
- code = response_code (url)
187
- if code >= 300 && code < 400
188
- http = Net::HTTP.new(uri.host, uri.port)
189
- http.open_timeout = timeo
190
- http.read_timeout = timeo
191
- if (url =~ /https\:/i)
192
- http.use_ssl = true
193
- # Bypass the remote web server cert validation test
194
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
195
- http.ssl_version = @ssl_version
196
- end
197
- request = Net::HTTP::Get.new(uri.request_uri)
198
- response = http.request(request)
199
- puts "Response: #{response}" if @verbose
200
- case response
201
- when Net::HTTPRedirection then
202
- location = response['location']
203
- end
204
- end
205
- @url_redirection[url]=location
206
- return location
207
- rescue Exception => ee
208
- puts "Exception on method redirect_location for URL #{url}: #{ee}" if @verbose
209
- @url_redirection[url]=location
210
- return location
211
197
  end
198
+ @url_redirection[url]=location
199
+ return location
200
+ rescue Exception => ee
201
+ puts "Exception on method redirect_location for URL #{url}: #{ee}" if @verbose
202
+ return ""
212
203
  end
213
204
  alias_method :location, :redirect_location
214
205
 
215
206
  # Test the URL / Site and return the landing url location (recursive with the depth = 4 )
216
- def landing_location (depth=4, url)
217
- begin
218
- depth -= 1
219
- return url if depth < 1
220
- timeo = @http_timeout/1000.0
221
- uri = URI.parse(url)
222
- code = response_code (url)
223
- if code >= 300 && code < 400
224
- url = redirect_location (url)
225
- url = landing_location(depth,url)
226
- else
227
- return url
228
- end
207
+ def landing_location (depth=5, url)
208
+ depth -= 1
209
+ return url if depth < 1
210
+ timeo = @http_timeout/1000.0
211
+ uri = URI.parse(url)
212
+ code = response_code (url)
213
+ if code >= 300 && code < 400
214
+ url = redirect_location (url)
215
+ url = landing_location(depth,url)
216
+ else
229
217
  return url
230
- rescue Exception => ee
231
- puts "Exception on method #{__method__} on URL #{url}: #{ee}" if @verbose
232
218
  end
219
+ return url
220
+ rescue Exception => ee
221
+ puts "Exception on method #{__method__} on URL #{url}: #{ee}" if @verbose
233
222
  end
223
+ =end
234
224
 
235
225
  # Test the URL / site and return the web server type from the HTTP header "server" field
236
226
  def get_server_header (url)
237
- begin
238
- puts "Retrieve the server header field from the url: #{url}" if @verbose
239
- server=String.new
240
- raise "Invalid url: #{url}" unless is_url?(url)
241
- url=url.strip.downcase
242
- timeo = @http_timeout/1000.0
243
- uri = URI.parse(url)
244
- code = response_code (url)
245
- http = Net::HTTP.new(uri.host, uri.port)
246
- http.open_timeout = timeo
247
- http.read_timeout = timeo
248
- if (url =~ /https\:/i)
249
- http.use_ssl = true
250
- # Bypass the remote web server cert validation test
251
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
252
- http.ssl_version = @ssl_version
253
- end
254
- request = Net::HTTP::Get.new(uri.request_uri)
255
- response = http.request(request)
256
- server=response["server"]
257
- server=server.gsub(/\,/,' ')
258
- return server
259
- rescue Exception => ee
260
- puts "Exception on method get_server_header for URL #{url}: #{ee}" if @verbose
261
- @url_server[url]=server
262
- return server
227
+ puts "Retrieve the server header field from the url: #{url}" if @verbose
228
+ server=String.new
229
+ raise "Invalid url: #{url}" unless is_url?(url)
230
+ url=url.strip.downcase
231
+ timeo = @http_timeout/1000.0
232
+ uri = URI.parse(url)
233
+ code = response_code (url)
234
+ http = Net::HTTP.new(uri.host, uri.port)
235
+ http.open_timeout = timeo
236
+ http.read_timeout = timeo
237
+ if (url =~ /https\:/i)
238
+ http.use_ssl = true
239
+ # Bypass the remote web server cert validation test
240
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
241
+ http.ssl_version = @ssl_version
263
242
  end
243
+ request = Net::HTTP::Get.new(uri.request_uri)
244
+ response = http.request(request)
245
+ server=response["server"]
246
+ server=server.gsub(/\,/,' ')
247
+ return server
248
+ rescue Exception => ee
249
+ puts "Exception on method get_server_header for URL #{url}: #{ee}" if @verbose
250
+ @url_server[url]=server
251
+ return server
264
252
  end
265
253
 
266
254
  # Use MD5 algorithm to fingerprint the URL / site response payload (web page content)
267
255
  def response_body_md5(url)
268
256
  puts "MD5 finger print page body content: #{url}" if @verbose
269
- begin
270
- raise "Invalid url: #{url}" unless is_url?(url)
271
- url=url.strip.downcase
272
- timeo = @http_timeout/1000.0
273
- uri = URI.parse(url)
274
- fp=""
275
- http = Net::HTTP.new(uri.host, uri.port)
276
- http.open_timeout = timeo
277
- http.read_timeout = timeo
278
- if (url =~ /https\:/i)
279
- http.use_ssl = true
280
- # Bypass the remote web server cert validation test
281
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
282
- http.ssl_version = @ssl_version
283
- end
284
- request = Net::HTTP::Get.new(uri.request_uri)
285
- response = http.request(request)
286
- response_body = response.body.to_s
287
- fp=Digest::MD5.hexdigest(response_body) unless response_body.nil?
288
- @url_finger_print[url] = fp
289
- return fp
290
- rescue Exception => ee
291
- puts "Exception on method #{__method__}: #{ee}" if @verbose
257
+ raise "Invalid url: #{url}" unless is_url?(url)
258
+ url=url.strip.downcase
259
+ timeo = @http_timeout/1000.0
260
+ uri = URI.parse(url)
261
+ fp=""
262
+ http = Net::HTTP.new(uri.host, uri.port)
263
+ http.open_timeout = timeo
264
+ http.read_timeout = timeo
265
+ if (url =~ /https\:/i)
266
+ http.use_ssl = true
267
+ # Bypass the remote web server cert validation test
268
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
269
+ http.ssl_version = @ssl_version
292
270
  end
271
+ request = Net::HTTP::Get.new(uri.request_uri)
272
+ response = http.request(request)
273
+ response_body = response.body.to_s
274
+ fp=Digest::MD5.hexdigest(response_body) unless response_body.nil?
275
+ @url_finger_print[url] = fp
276
+ return fp
277
+ rescue Exception => ee
278
+ puts "Exception on method #{__method__}: #{ee}" if @verbose
293
279
  end
294
280
  alias_method :md5, :response_body_md5
295
281
 
296
282
  # Retrieve the remote web server certification, open it and return the cert content as a string
297
283
  def get_certificate (url)
298
284
  puts "Retrieve the remote web server SSL certificate in clear text: #{url}" if @verbose
299
- begin
300
- url=url.strip
301
- raise "Invalid URL string: #{url}" unless is_ssl?(url)
302
- client = HTTPClient.new
303
- client.ssl_config.verify_mode = OpenSSL::SSL::VERIFY_NONE
304
- response = client.get(url)
305
- cert = response.peer_cert
306
- cer = OpenSSL::X509::Certificate.new(cert)
307
- return cer.to_text
308
- rescue Exception => ee
309
- puts "Exception on method #{__method__} from #{url}: #{ee}"
310
- end
285
+ url=url.strip
286
+ raise "Invalid URL string: #{url}" unless is_ssl?(url)
287
+ client = HTTPClient.new
288
+ client.ssl_config.verify_mode = OpenSSL::SSL::VERIFY_NONE
289
+ response = client.get(url)
290
+ cert = response.peer_cert
291
+ cer = OpenSSL::X509::Certificate.new(cert)
292
+ return cer.to_text
293
+ rescue Exception => ee
294
+ puts "Exception on method #{__method__} from #{url}: #{ee}"
311
295
  return nil
312
296
  end
313
297
  alias_method :get_cert, :get_certificate
@@ -315,19 +299,17 @@ class Wmap::UrlChecker
315
299
  # Retrieve the X509 cert in the clear text from the remote web server, extract and return the common name field within the cert
316
300
  def get_cert_cn (url)
317
301
  puts "Extract the common name field from a X509 cert: #{cert}" if @verbose
318
- begin
319
- cert=get_certificate(url)
320
- subject, cn = ""
321
- if cert =~ /\n(.+)Subject\:(.+)\n/i
322
- subject=$2
323
- end
324
- if subject =~/CN\=(.+)/i
325
- cn=$1
326
- end
327
- return cn
328
- rescue Exception => ee
329
- puts "Error on method #{__method__} from #{cert}: #{ee}" if @verbose
302
+ cert=get_certificate(url)
303
+ subject, cn = ""
304
+ if cert =~ /\n(.+)Subject\:(.+)\n/i
305
+ subject=$2
306
+ end
307
+ if subject =~/CN\=(.+)/i
308
+ cn=$1
330
309
  end
310
+ return cn
311
+ rescue Exception => ee
312
+ puts "Error on method #{__method__} from #{url}: #{ee}" if @verbose
331
313
  return nil
332
314
  end
333
315
  alias_method :get_cn, :get_cert_cn