Changes

Jump to navigation Jump to search
3,225 bytes added ,  22:44, 20 December 2023
no edit summary
Line 1: Line 1: −
==IPv6 Port Scan Automation==
+
==IPscan IPv6 Port Scan Automation==
 +
 
 +
This section provides an overview of automated IPv6 firewall testing (IPv6 TCP and UDP port scans) using wget and IPscan.
 +
 
    
===Terms of Use===
 
===Terms of Use===
'''Please ensure that you accept the terms of use for ''[http://ipv6.chappell-family.com/ipv6tcptest/ my IPv6 port scanner]'' and are authorised to perform IPv6 port scans against the machine that you wish to test ''BEFORE'' attempting any of the steps outlined below. Please also ensure that you are not accessing web pages using an HTTP proxy. If in doubt then a web proxy can be disabled by following the command-line examples shown below.'''
      +
'''Please ensure that you accept the ''[https://wiki.chappell-family.com/wiki/index.php?title=Timswiki:About terms of use]'' and are authorised to perform IPv6 port scans against the machine that you wish to test ''BEFORE'' attempting any of the steps outlined below. Please also ensure that you are not accessing web pages using an HTTP proxy. If in doubt then a web proxy can be disabled by following the command-line examples shown below.'''
 +
 +
 +
This website publishes a [[Timswiki:Privacy_policy]]. Continued use of this website implies your consent to the storage of data outlined in the policy.
 +
 +
 +
----
    
===Rules for Forming the URL===
 
===Rules for Forming the URL===
 +
 
It is possible to request automatic scans using '''''wget''''' but the URLs must be constructed as shown below. In each case you '''MUST:'''
 
It is possible to request automatic scans using '''''wget''''' but the URLs must be constructed as shown below. In each case you '''MUST:'''
   −
* target my IPv6-only host and IPv6 cgi-bin directory (www6.ipv6.chappell-family.com/cgi-bin6/)
+
* target the IPscan IPv6 host and IPv6 cgi-bin directory (www66.chappell-family.co.uk/cgi-bin6/)
 
* use the text-browser compatible cgi target (ipscan-txt.cgi)
 
* use the text-browser compatible cgi target (ipscan-txt.cgi)
 
* include an includeexisting query term, setting it to either 1 (include default ports [[IPv6_Ports]]) or -1 (exclude default ports)
 
* include an includeexisting query term, setting it to either 1 (include default ports [[IPv6_Ports]]) or -1 (exclude default ports)
 
* include all 4 customport terms (numbered 0 to 3), setting them equal to nothing if they are unused
 
* include all 4 customport terms (numbered 0 to 3), setting them equal to nothing if they are unused
 +
* include the termsaccepted term, setting it to 1 to indicate your acceptance of the terms and conditions
 
* ensure that there are no spaces in the query string, particularly if using cut'n'paste
 
* ensure that there are no spaces in the query string, particularly if using cut'n'paste
 
* wrap the resulting URL in quotes to ensure that the ampersand characters are not mis-interpreted
 
* wrap the resulting URL in quotes to ensure that the ampersand characters are not mis-interpreted
   −
Failure to follow all of the above rules will result in a failure to scan your host. I'd also suggest that you specify a desired output document in the wget command-line since otherwise the filename will be somewhat convoluted!
+
Failure to follow all of the above rules will result in a failure to scan your host. I'd also suggest that you specify a desired output document in the wget command-line - otherwise the filename will be based on the called URL and so will be somewhat convoluted!
 +
 
 +
'''If you include the default ports (includeexisting=1) then the scan will take up to approximately 15 seconds to complete - please be patient!'''
    
===Windows Users - please READ===
 
===Windows Users - please READ===
 +
 
If you're intending to test a windows PC, then you need to be careful which pre-compiled version of wget you have installed. Some of the available versions do not include IPv6 support. The download at the following link is known to work on windows 7:
 
If you're intending to test a windows PC, then you need to be careful which pre-compiled version of wget you have installed. Some of the available versions do not include IPv6 support. The download at the following link is known to work on windows 7:
    
* [http://gnuwin32.sourceforge.net/packages/wget.htm http://gnuwin32.sourceforge.net/packages/wget.htm]
 
* [http://gnuwin32.sourceforge.net/packages/wget.htm http://gnuwin32.sourceforge.net/packages/wget.htm]
      +
Another good solution for PC users can be found within the [http://www.cygwin.com/ Cygwin] tool. Wget on Cygwin is built with the following options:
 +
 +
<pre>
 +
$ wget -V
 +
GNU Wget 1.13.4 built on cygwin.
 +
 +
+digest +https +ipv6 +iri +large-file +nls -ntlm +opie +ssl/gnutls
 +
</pre>
 +
 +
==Example Scans==
    
Now for some concrete examples:
 
Now for some concrete examples:
      −
===Testing just the default port list===
+
===Testing just the UDP and TCP default port list===
      −
'''wget --no-proxy --output-document=ipv6.html <nowiki>"http://www6.ipv6.chappell-family.com/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=&customport1=&customport2=&customport3="</nowiki>'''
+
'''wget --no-proxy --output-document=ipv6.html <nowiki>"https://www66.chappell-family.co.uk/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=&customport1=&customport2=&customport3=&termsaccepted=1"</nowiki>'''
    
<pre>   
 
<pre>   
   --2012-01-28 14:28:03--  http://www6.ipv6.chappell-family.com/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=&customport1=&customport2=&customport3=
+
   --2012-01-28 14:28:03--  https://www66.chappell-family.co.uk/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=&customport1=&customport2=&customport3=&termsaccepted=1
   Resolving www6.ipv6.chappell-family.com... 2001:470:1f08:185c::2
+
   Resolving www66.chappell-family.co.uk... 2001:470:971f:99::6
   Connecting to www6.ipv6.chappell-family.com|2001:470:1f08:185c::2|:80... connected.
+
   Connecting to www66.chappell-family.co.uk|2001:470:971f:99::6|:443... connected.
 
   HTTP request sent, awaiting response... 200 OK
 
   HTTP request sent, awaiting response... 200 OK
 
   Length: 10147 (9.9K) [text/html]
 
   Length: 10147 (9.9K) [text/html]
Line 45: Line 68:  
</pre>
 
</pre>
   −
 
+
===Testing the UDP ports and a single TCP port, e.g. 8080===
===Testing a single TCP port, e.g. 8080===
   
    
 
    
 
    
 
    
'''wget --no-proxy --output-document=ipv6.html <nowiki>"http://www6.ipv6.chappell-family.com/cgi-bin6/ipscan-txt.cgi?includeexisting=-1&customport0=8080&customport1=&customport2=&customport3="</nowiki>'''
+
'''wget --no-proxy --output-document=ipv6.html <nowiki>"https://www66.chappell-family.co.uk/cgi-bin6/ipscan-txt.cgi?includeexisting=-1&customport0=8080&customport1=&customport2=&customport3=&termsaccepted=1"</nowiki>'''
    
<pre>
 
<pre>
   --2012-01-28 14:37:21--  http://www6.ipv6.chappell-family.com/cgi-bin6/ipscan-txt.cgi?includeexisting=-1&customport0=8080&customport1=&customport2=&customport3=
+
   --2012-01-28 14:37:21--  https://www66.chappell-family.co.uk/cgi-bin6/ipscan-txt.cgi?includeexisting=-1&customport0=8080&customport1=&customport2=&customport3=&termsaccepted=1
   Resolving www6.ipv6.chappell-family.com... 2001:470:1f08:185c::2
+
   Resolving www66.chappell-family.co.uk... 2001:470:971f:99::6
   Connecting to www6.ipv6.chappell-family.com|2001:470:1f08:185c::2|:80... connected.
+
   Connecting to www66.chappell-family.co.uk|2001:470:971f:99::6|:443... connected.
 
   HTTP request sent, awaiting response... 200 OK
 
   HTTP request sent, awaiting response... 200 OK
 
   Length: 7323 (7.2K) [text/html]
 
   Length: 7323 (7.2K) [text/html]
Line 64: Line 86:  
</pre>
 
</pre>
   −
 
+
===Testing the UDP ports, the default TCP ports list and 3 custom TCP ports===
===Testing the default port list and 3 custom ports===
           −
'''wget --no-proxy --output-document=ipv6.html <nowiki>"http://www6.ipv6.chappell-family.com/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=8080&customport1=33452&customport2=65535&customport3="</nowiki>'''
+
'''wget --no-proxy --output-document=ipv6.html <nowiki>"https://www66.chappell-family.co.uk/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=8080&customport1=33452&customport2=65535&customport3=&termsaccepted=1"</nowiki>'''
    
<pre>
 
<pre>
   --2012-01-28 14:39:53--  http://www6.ipv6.chappell-family.com/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=8080&customport1=33452&customport2=65535&customport3=
+
   --2012-01-28 14:39:53--  https://www66.chappell-family.co.uk/cgi-bin6/ipscan-txt.cgi?includeexisting=1&customport0=8080&customport1=33452&customport2=65535&customport3=&termsaccepted=1
   Resolving www6.ipv6.chappell-family.com... 2001:470:1f08:185c::2
+
   Resolving www66.chappell-family.co.uk... 2001:470:971f:99::6
   Connecting to www6.ipv6.chappell-family.com|2001:470:1f08:185c::2|:80... connected.
+
   Connecting to www66.chappell-family.co.uk|2001:470:971f:99::6|:443... connected.
 
   HTTP request sent, awaiting response... 200 OK
 
   HTTP request sent, awaiting response... 200 OK
 
   Length: 10263 (10K) [text/html]
 
   Length: 10263 (10K) [text/html]
Line 84: Line 105:  
</pre>
 
</pre>
    +
===Default test using curl===
 +
 +
'''$ curl -sS "https://www66.chappell-family.co.uk/cgi-bin6/ipscanfasttxt.cgi?includeexisting=1&customport0=&customport1=&customport2=&customport3=&termsaccepted=1"'''
 +
 +
or
 +
 +
'''$ curl -sS "https://www66.chappell-family.co.uk/cgi-bin6/ipscanfasttxt.cgi?includeexisting=1&customport0=&customport1=&customport2=&customport3=&termsaccepted=1" |awk -F'[<> ]' 'BEGIN{printf("\nPORT\tSTATE\n")};{for(i=4;i<=NF;i++){if (index($i,"OPEN")>0 && $(i-1)=="=" && $(i-3)=="Port") {printf("%s\t%s\n",$(i-2),$i)}}};' '''
 +
 +
<pre>
 +
PORT    STATE
 +
80      OPEN
 +
443    OPEN
 +
1080    OPEN
 +
3128    OPEN
 +
</pre>
 +
 +
===Testing on Ubiquity ERlite Routers===
 +
 +
On the router:
 +
 +
'''sudo /usr/bin/curl -G <nowiki>'https://www66.chappell-family.co.uk/cgi-bin6/ipscantxt.cgi'</nowiki> --data-urlencode 'includeexisting=1' --data-urlencode 'customport0=' --data-urlencode 'customport1=' --data-urlencode 'customport2=' --data-urlencode 'customport3=' --data-urlencode 'termsaccepted=1' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Connection: keep-alive' 2>&1 >/tmp/ipv6.html'''
 +
 +
'''sudo scp /tmp/ipv6.html <user>@<host>:'''
 +
 +
'''sudo rm -f /tmp/ipv6.html'''
 +
 +
 +
Exchange <user> and <host> for an applicable account and machine name to transfer the results file to.
 +
 +
<pre>sudo /usr/bin/curl -G <nowiki>'https://www66.chappell-family.co.uk/cgi-bin6/ipscantxt.cgi'</nowiki> --data-urlencode 'includeexisting=1' --data-urlencode 'customport0=' --data-urlencode 'customport1=' --data-urlencode 'customport2=' --data-urlencode 'customport3=' --data-urlencode 'termsaccepted=1' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Accept-Language: en-US,en;q=0.5' --compressed -H 'Connection: keep-alive' 2>&1 >/tmp/ipv6.html
 +
  % Total    % Received % Xferd  Average Speed  Time    Time    Time  Current
 +
                                Dload  Upload  Total  Spent    Left  Speed
 +
100  2844  100  2844    0    0    30      0  0:01:34  0:01:33  0:00:01  627
 +
</pre>
    
===HTML Results Scraping===
 
===HTML Results Scraping===
Line 90: Line 145:       −
----
+
This website publishes a Privacy Policy (link at the bottom of every page). Continued use of this website implies your consent to the use of data outlined in the policy.
 
  −
 
  −
<adsense>1</adsense>
 

Navigation menu