├── .gitignore ├── LICENSE ├── README.md ├── all_tlds.txt ├── cidr.txt ├── exclude.txt ├── scancannon.conf └── scancannon.sh /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | .DS_Store 3 | paused.conf 4 | cidr.txt 5 | results/ 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | This project is released under the Creative Commons Attribution-NonCommercial 3.0 Unported License. 2 | 3 | 4 | 5 | Here is the "TL;DR" Human-Readbale Summary: 6 | 7 | 8 | You are free to: 9 | 10 | Share — copy and redistribute the material in any medium or format 11 | Adapt — remix, transform, and build upon the material 12 | The licensor cannot revoke these freedoms as long as you follow the license terms. 13 | Under the following terms: 14 | 15 | [!]Attribution — You must give appropriate credit to all contributors to this project, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. 16 | 17 | [!]NonCommercial — You may not use the material for commercial purposes. 18 | No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits. 19 | Notices: 20 | 21 | You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation. 22 | No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material. 23 | 24 | 25 | 26 | 27 | 28 | FULL LICENSE: 29 | 30 | Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported 31 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN “AS-IS” BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM ITS USE. 32 | License 33 | THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE (“CCPL” OR “LICENSE”). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. 34 | 35 | BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. 36 | 37 | Definitions 38 | 39 | “Adaptation” means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image (“synching”) will be considered an Adaptation for the purpose of this License. 40 | 41 | “Collection” means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(g) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined above) for the purposes of this License. 42 | 43 | “Distribute” means to make available to the public the original and copies of the Work or Adaptation, as appropriate, through sale or other transfer of ownership. 44 | 45 | “License Elements” means the following high-level license attributes as selected by Licensor and indicated in the title of this License: Attribution, Noncommercial, ShareAlike. 46 | 47 | “Licensor” means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License. 48 | 49 | “Original Author” means, in the case of a literary or artistic work, the individual, individuals, entity or entities who created the Work or if no individual or entity can be identified, the publisher; and in addition (i) in the case of a performance the actors, singers, musicians, dancers, and other persons who act, sing, deliver, declaim, play in, interpret or otherwise perform literary or artistic works or expressions of folklore; (ii) in the case of a phonogram the producer being the person or legal entity who first fixes the sounds of a performance or other sounds; and, (iii) in the case of broadcasts, the organization that transmits the broadcast. 50 | 51 | “Work” means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work. 52 | 53 | “You” means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation. 54 | 55 | “Publicly Perform” means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images. 56 | 57 | “Reproduce” means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium. 58 | 59 | Fair Dealing Rights. Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws. 60 | 61 | License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below: 62 | 63 | to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections; 64 | 65 | to create and Reproduce Adaptations provided that any such Adaptation, including any translation in any medium, takes reasonable steps to clearly label, demarcate or otherwise identify that changes were made to the original Work. For example, a translation could be marked “The original work was translated from English to Spanish,” or a modification could indicate “The original work has been modified.”; 66 | 67 | to Distribute and Publicly Perform the Work including as incorporated in Collections; and, 68 | 69 | to Distribute and Publicly Perform Adaptations. 70 | 71 | The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. Subject to Section 8(f), all rights not expressly granted by Licensor are hereby reserved, including but not limited to the rights described in Section 4(e). 72 | 73 | Restrictions. The license granted in Section 3 above is expressly made subject to and limited by the following restrictions: 74 | 75 | You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(d), as requested. If You create an Adaptation, upon notice from any Licensor You must, to the extent practicable, remove from the Adaptation any credit as required by Section 4(d), as requested. 76 | 77 | You may Distribute or Publicly Perform an Adaptation only under: (i) the terms of this License; (ii) a later version of this License with the same License Elements as this License; (iii) a Creative Commons jurisdiction license (either this or a later license version) that contains the same License Elements as this License (e.g., Attribution-NonCommercial-ShareAlike 3.0 US) (“Applicable License”). You must include a copy of, or the URI, for Applicable License with every copy of each Adaptation You Distribute or Publicly Perform. You may not offer or impose any terms on the Adaptation that restrict the terms of the Applicable License or the ability of the recipient of the Adaptation to exercise the rights granted to that recipient under the terms of the Applicable License. You must keep intact all notices that refer to the Applicable License and to the disclaimer of warranties with every copy of the Work as included in the Adaptation You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Adaptation, You may not impose any effective technological measures on the Adaptation that restrict the ability of a recipient of the Adaptation from You to exercise the rights granted to that recipient under the terms of the Applicable License. This Section 4(b) applies to the Adaptation as incorporated in a Collection, but this does not require the Collection apart from the Adaptation itself to be made subject to the terms of the Applicable License. 78 | 79 | You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation. The exchange of the Work for other copyrighted works by means of digital file-sharing or otherwise shall not be considered to be intended for or directed toward commercial advantage or private monetary compensation, provided there is no payment of any monetary compensation in con-nection with the exchange of copyrighted works. 80 | 81 | If You Distribute, or Publicly Perform the Work or any Adaptations or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (e.g., a sponsor institute, publishing entity, journal) for attribution (“Attribution Parties”) in Licensor’s copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and, (iv) consistent with Section 3(b), in the case of an Adaptation, a credit identifying the use of the Work in the Adaptation (e.g., “French translation of the Work by Original Author,” or “Screenplay based on original Work by Original Author”). The credit required by this Section 4(d) may be implemented in any reasonable manner; provided, however, that in the case of a Adaptation or Collection, at a minimum such credit will appear, if a credit for all contributing authors of the Adaptation or Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties. 82 | 83 | For the avoidance of doubt: 84 | 85 | Non-waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; 86 | 87 | Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License if Your exercise of such rights is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(c) and otherwise waives the right to collect royalties through any statutory or compulsory licensing scheme; and, 88 | 89 | Voluntary License Schemes. The Licensor reserves the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License that is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(c). 90 | 91 | Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Adaptations or Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author’s honor or reputation. Licensor agrees that in those jurisdictions (e.g. Japan), in which any exercise of the right granted in Section 3(b) of this License (the right to make Adaptations) would be deemed to be a distortion, mutilation, modification or other derogatory action prejudicial to the Original Author’s honor and reputation, the Licensor will waive or not assert, as appropriate, this Section, to the fullest extent permitted by the applicable national law, to enable You to reasonably exercise Your right under Section 3(b) of this License (right to make Adaptations) but not otherwise. 92 | 93 | Representations, Warranties and Disclaimer 94 | 95 | UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING AND TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THIS EXCLUSION MAY NOT APPLY TO YOU. 96 | 97 | Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 98 | 99 | Termination 100 | 101 | This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Adaptations or Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License. 102 | 103 | Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above. 104 | 105 | Miscellaneous 106 | 107 | Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License. 108 | 109 | Each time You Distribute or Publicly Perform an Adaptation, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License. 110 | 111 | If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. 112 | 113 | No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent. 114 | 115 | This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You. 116 | 117 | The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law. 118 | 119 | Creative Commons Notice 120 | Creative Commons is not a party to this License, and makes no warranty whatsoever in connection with the Work. Creative Commons will not be liable to You or any party on any legal theory for any damages whatsoever, including without limitation any general, special, incidental or consequential damages arising in connection to this license. Notwithstanding the foregoing two (2) sentences, if Creative Commons has expressly identified itself as the Licensor hereunder, it shall have all rights and obligations of Licensor. 121 | 122 | Except for the limited purpose of indicating to the public that the Work is licensed under the CCPL, Creative Commons does not authorize the use by either party of the trademark “Creative Commons” or any related trademark or logo of Creative Commons without the prior written consent of Creative Commons. Any permitted use will be in compliance with Creative Commons’ then-current trademark usage guidelines, as may be published on its website or otherwise made available upon request from time to time. For the avoidance of doubt, this trademark restriction does not form part of this License. 123 | 124 | Creative Commons may be contacted at http://creativecommons.org/. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ScanCannon v1.1 2 | 3 | ![scancannon](https://i.imgur.com/FUvPADq.png) 4 | 5 | **A Bash script for efficient enumeration of massive Internet network ranges.** 6 | 7 | Handles the enumeration of large, internet-based networks at high speed. Uses masscan to quickly identify open ports, then calls nmap to gain details on the systems/services listening on those ports. 8 | 9 | - Provides tons of handy flat files for importing into other tools: 10 | - `masscan` & `nmap` standard output files 11 | - Discovered domains and subdomains 12 | - Highly-attackable services such as RDP, ssh, ftp 13 | 14 | ## FAQ 15 | 16 | ### Don't `nmap` and `masscan` do the same thing? Why use both? 17 | 18 | Masscan, by nature of what makes it so fast, has a potential for losing packets and thus reporting false negatives during many scans. Thus, Masscan is used to identify which IP addresses have a listening host, then hands this full list off to Nmap. Nmap, on the other hand, is insanely slow when scanning massive networks which is why Masscan was created, so we use Masscan first to shrink the actual number of hosts to attempt to scan deeper. 19 | 20 | ### Doesn't $Tool[x] do all of this and more? Why use this one? 21 | 22 | While there is an ocean of tools for performing enumeration in this manner, everything wants to be the one-stop shop for attack surface and OSINT cataloging. This inevitably results in an AOL-level tool and interface that is good at a small number of things, but not great at the rest, and its output still requires a lot of annoying custom parsers to import into the better tools you want to use. This tool does a sparse few things, and outputs to universally-acceptaed flat files. 23 | 24 | ## Usage 25 | 26 | `$ scancannon.sh [CIDR range | Targets file] -u 27 | 28 | `-u` Perform UDP scan on common ports (53, 161, 500) using nmap (very slow) 29 | 30 | `Targets file` contains a line-separated list of CIDR networks 31 | 32 | Masscan arguments can be modified within scancannon.conf. DO NOT add arguments that are already present in the script itself; these are hard-coded for a reason and changing them will break stuff. Be aware that Masscan first reads from its default conf file (usually /etc/masscan/masscan.conf) and overrides it with anything provided in scancannon.conf. 33 | 34 | ## Software Requirements 35 | 36 | - [Masscan v1.0.3+](https://github.com/robertdavidgraham/masscan) 37 | - [nmap v7.0.1+](https://github.com/nmap/nmap) 38 | 39 | ## WARNING 40 | 41 | It is VERY FEASIBLE to execute a Denial of Service against the target networks, even when launching from a single source. You should start with a very low masscan max-rate (5,000-10,000 kpps) and increase slowly to test. Even 10,000 kpps can take down some SOHO routers (Is it the new deauth attack?). On bare metal, pushing beyond 20,000 seems to increase the chances of missing responses from the target. 40,000 kpps has been known to DoS ESXi virtual switches (even on the source). ~200,000 is often enough to take out ISP equipment (but will probably literally melt your NIC first). 42 | 43 | ## Known Issues 44 | 45 | - Domain detection for International TLDs (Such as .co.uk) doesn't work too well due to InterNIC, etc. not complying with ARIN standards. 46 | 47 | ## LICENSE 48 | 49 | This project is released under the Creative Commons Attribution-NonCommercial 3.0 Unported License. 50 | 51 | ![](https://upload.wikimedia.org/wikipedia/commons/9/99/Cc-by-nc_icon.svg) 52 | 53 | You are free to: 54 | 55 | - Share — copy and redistribute the material in any medium or format 56 | - Adapt — remix, transform, and build upon the material 57 | - The licensor cannot revoke these freedoms as long as you follow the license terms. 58 | 59 | Under the following terms: 60 | 61 | - [!]Attribution — You must give appropriate credit to all contributors to this project, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. 62 | 63 | - [!]NonCommercial — You may not use the material for commercial purposes. 64 | No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits. 65 | 66 | Notices: 67 | 68 | You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation. 69 | 70 | No warranties are given. 71 | 72 | For the full text of this license, see [LICENSE](https://github.com/johnnyxmas/ScanCannon/blob/master/LICENSE). 73 | -------------------------------------------------------------------------------- /all_tlds.txt: -------------------------------------------------------------------------------- 1 | [.]AAA 2 | [.]AARP 3 | [.]ABB 4 | [.]ABBOTT 5 | [.]ABBVIE 6 | [.]ABC 7 | [.]ABLE 8 | [.]ABOGADO 9 | [.]ABUDHABI 10 | [.]AC 11 | [.]ACADEMY 12 | [.]ACCENTURE 13 | [.]ACCOUNTANT 14 | [.]ACCOUNTANTS 15 | [.]ACO 16 | [.]ACTOR 17 | [.]AD 18 | [.]ADS 19 | [.]ADULT 20 | [.]AE 21 | [.]AEG 22 | [.]AERO 23 | [.]AETNA 24 | [.]AF 25 | [.]AFL 26 | [.]AFRICA 27 | [.]AG 28 | [.]AGAKHAN 29 | [.]AGENCY 30 | [.]AI 31 | [.]AIG 32 | [.]AIRBUS 33 | [.]AIRFORCE 34 | [.]AIRTEL 35 | [.]AKDN 36 | [.]AL 37 | [.]ALIBABA 38 | [.]ALIPAY 39 | [.]ALLFINANZ 40 | [.]ALLSTATE 41 | [.]ALLY 42 | [.]ALSACE 43 | [.]ALSTOM 44 | [.]AM 45 | [.]AMAZON 46 | [.]AMERICANEXPRESS 47 | [.]AMERICANFAMILY 48 | [.]AMEX 49 | [.]AMFAM 50 | [.]AMICA 51 | [.]AMSTERDAM 52 | [.]ANALYTICS 53 | [.]ANDROID 54 | [.]ANQUAN 55 | [.]ANZ 56 | [.]AO 57 | [.]AOL 58 | [.]APARTMENTS 59 | [.]APP 60 | [.]APPLE 61 | [.]AQ 62 | [.]AQUARELLE 63 | [.]AR 64 | [.]ARAB 65 | [.]ARAMCO 66 | [.]ARCHI 67 | [.]ARMY 68 | [.]ARPA 69 | [.]ART 70 | [.]ARTE 71 | [.]AS 72 | [.]ASDA 73 | [.]ASIA 74 | [.]ASSOCIATES 75 | [.]AT 76 | [.]ATHLETA 77 | [.]ATTORNEY 78 | [.]AU 79 | [.]AUCTION 80 | [.]AUDI 81 | [.]AUDIBLE 82 | [.]AUDIO 83 | [.]AUSPOST 84 | [.]AUTHOR 85 | [.]AUTO 86 | [.]AUTOS 87 | [.]AW 88 | [.]AWS 89 | [.]AX 90 | [.]AXA 91 | [.]AZ 92 | [.]AZURE 93 | [.]BA 94 | [.]BABY 95 | [.]BAIDU 96 | [.]BANAMEX 97 | [.]BAND 98 | [.]BANK 99 | [.]BAR 100 | [.]BARCELONA 101 | [.]BARCLAYCARD 102 | [.]BARCLAYS 103 | [.]BAREFOOT 104 | [.]BARGAINS 105 | [.]BASEBALL 106 | [.]BASKETBALL 107 | [.]BAUHAUS 108 | [.]BAYERN 109 | [.]BB 110 | [.]BBC 111 | [.]BBT 112 | [.]BBVA 113 | [.]BCG 114 | [.]BCN 115 | [.]BD 116 | [.]BE 117 | [.]BEATS 118 | [.]BEAUTY 119 | [.]BEER 120 | [.]BENTLEY 121 | [.]BERLIN 122 | [.]BEST 123 | [.]BESTBUY 124 | [.]BET 125 | [.]BF 126 | [.]BG 127 | [.]BH 128 | [.]BHARTI 129 | [.]BI 130 | [.]BIBLE 131 | [.]BID 132 | [.]BIKE 133 | [.]BING 134 | [.]BINGO 135 | [.]BIO 136 | [.]BIZ 137 | [.]BJ 138 | [.]BLACK 139 | [.]BLACKFRIDAY 140 | [.]BLOCKBUSTER 141 | [.]BLOG 142 | [.]BLOOMBERG 143 | [.]BLUE 144 | [.]BM 145 | [.]BMS 146 | [.]BMW 147 | [.]BN 148 | [.]BNPPARIBAS 149 | [.]BO 150 | [.]BOATS 151 | [.]BOEHRINGER 152 | [.]BOFA 153 | [.]BOM 154 | [.]BOND 155 | [.]BOO 156 | [.]BOOK 157 | [.]BOOKING 158 | [.]BOSCH 159 | [.]BOSTIK 160 | [.]BOSTON 161 | [.]BOT 162 | [.]BOUTIQUE 163 | [.]BOX 164 | [.]BR 165 | [.]BRADESCO 166 | [.]BRIDGESTONE 167 | [.]BROADWAY 168 | [.]BROKER 169 | [.]BROTHER 170 | [.]BRUSSELS 171 | [.]BS 172 | [.]BT 173 | [.]BUILD 174 | [.]BUILDERS 175 | [.]BUSINESS 176 | [.]BUY 177 | [.]BUZZ 178 | [.]BV 179 | [.]BW 180 | [.]BY 181 | [.]BZ 182 | [.]BZH 183 | [.]CA 184 | [.]CAB 185 | [.]CAFE 186 | [.]CAL 187 | [.]CALL 188 | [.]CALVINKLEIN 189 | [.]CAM 190 | [.]CAMERA 191 | [.]CAMP 192 | [.]CANON 193 | [.]CAPETOWN 194 | [.]CAPITAL 195 | [.]CAPITALONE 196 | [.]CAR 197 | [.]CARAVAN 198 | [.]CARDS 199 | [.]CARE 200 | [.]CAREER 201 | [.]CAREERS 202 | [.]CARS 203 | [.]CASA 204 | [.]CASE 205 | [.]CASH 206 | [.]CASINO 207 | [.]CAT 208 | [.]CATERING 209 | [.]CATHOLIC 210 | [.]CBA 211 | [.]CBN 212 | [.]CBRE 213 | [.]CC 214 | [.]CD 215 | [.]CENTER 216 | [.]CEO 217 | [.]CERN 218 | [.]CF 219 | [.]CFA 220 | [.]CFD 221 | [.]CG 222 | [.]CH 223 | [.]CHANEL 224 | [.]CHANNEL 225 | [.]CHARITY 226 | [.]CHASE 227 | [.]CHAT 228 | [.]CHEAP 229 | [.]CHINTAI 230 | [.]CHRISTMAS 231 | [.]CHROME 232 | [.]CHURCH 233 | [.]CI 234 | [.]CIPRIANI 235 | [.]CIRCLE 236 | [.]CISCO 237 | [.]CITADEL 238 | [.]CITI 239 | [.]CITIC 240 | [.]CITY 241 | [.]CK 242 | [.]CL 243 | [.]CLAIMS 244 | [.]CLEANING 245 | [.]CLICK 246 | [.]CLINIC 247 | [.]CLINIQUE 248 | [.]CLOTHING 249 | [.]CLOUD 250 | [.]CLUB 251 | [.]CLUBMED 252 | [.]CM 253 | [.]CN 254 | [.]CO 255 | [.]COACH 256 | [.]CODES 257 | [.]COFFEE 258 | [.]COLLEGE 259 | [.]COLOGNE 260 | [.]COM 261 | [.]COMMBANK 262 | [.]COMMUNITY 263 | [.]COMPANY 264 | [.]COMPARE 265 | [.]COMPUTER 266 | [.]COMSEC 267 | [.]CONDOS 268 | [.]CONSTRUCTION 269 | [.]CONSULTING 270 | [.]CONTACT 271 | [.]CONTRACTORS 272 | [.]COOKING 273 | [.]COOL 274 | [.]COOP 275 | [.]CORSICA 276 | [.]COUNTRY 277 | [.]COUPON 278 | [.]COUPONS 279 | [.]COURSES 280 | [.]CPA 281 | [.]CR 282 | [.]CREDIT 283 | [.]CREDITCARD 284 | [.]CREDITUNION 285 | [.]CRICKET 286 | [.]CROWN 287 | [.]CRS 288 | [.]CRUISE 289 | [.]CRUISES 290 | [.]CU 291 | [.]CUISINELLA 292 | [.]CV 293 | [.]CW 294 | [.]CX 295 | [.]CY 296 | [.]CYMRU 297 | [.]CYOU 298 | [.]CZ 299 | [.]DABUR 300 | [.]DAD 301 | [.]DANCE 302 | [.]DATA 303 | [.]DATE 304 | [.]DATING 305 | [.]DATSUN 306 | [.]DAY 307 | [.]DCLK 308 | [.]DDS 309 | [.]DE 310 | [.]DEAL 311 | [.]DEALER 312 | [.]DEALS 313 | [.]DEGREE 314 | [.]DELIVERY 315 | [.]DELL 316 | [.]DELOITTE 317 | [.]DELTA 318 | [.]DEMOCRAT 319 | [.]DENTAL 320 | [.]DENTIST 321 | [.]DESI 322 | [.]DESIGN 323 | [.]DEV 324 | [.]DHL 325 | [.]DIAMONDS 326 | [.]DIET 327 | [.]DIGITAL 328 | [.]DIRECT 329 | [.]DIRECTORY 330 | [.]DISCOUNT 331 | [.]DISCOVER 332 | [.]DISH 333 | [.]DIY 334 | [.]DJ 335 | [.]DK 336 | [.]DM 337 | [.]DNP 338 | [.]DO 339 | [.]DOCS 340 | [.]DOCTOR 341 | [.]DOG 342 | [.]DOMAINS 343 | [.]DOT 344 | [.]DOWNLOAD 345 | [.]DRIVE 346 | [.]DTV 347 | [.]DUBAI 348 | [.]DUNLOP 349 | [.]DUPONT 350 | [.]DURBAN 351 | [.]DVAG 352 | [.]DVR 353 | [.]DZ 354 | [.]EARTH 355 | [.]EAT 356 | [.]EC 357 | [.]ECO 358 | [.]EDEKA 359 | [.]EDU 360 | [.]EDUCATION 361 | [.]EE 362 | [.]EG 363 | [.]EMAIL 364 | [.]EMERCK 365 | [.]ENERGY 366 | [.]ENGINEER 367 | [.]ENGINEERING 368 | [.]ENTERPRISES 369 | [.]EPSON 370 | [.]EQUIPMENT 371 | [.]ER 372 | [.]ERICSSON 373 | [.]ERNI 374 | [.]ES 375 | [.]ESQ 376 | [.]ESTATE 377 | [.]ET 378 | [.]EU 379 | [.]EUROVISION 380 | [.]EUS 381 | [.]EVENTS 382 | [.]EXCHANGE 383 | [.]EXPERT 384 | [.]EXPOSED 385 | [.]EXPRESS 386 | [.]EXTRASPACE 387 | [.]FAGE 388 | [.]FAIL 389 | [.]FAIRWINDS 390 | [.]FAITH 391 | [.]FAMILY 392 | [.]FAN 393 | [.]FANS 394 | [.]FARM 395 | [.]FARMERS 396 | [.]FASHION 397 | [.]FAST 398 | [.]FEDEX 399 | [.]FEEDBACK 400 | [.]FERRARI 401 | [.]FERRERO 402 | [.]FI 403 | [.]FIDELITY 404 | [.]FIDO 405 | [.]FILM 406 | [.]FINAL 407 | [.]FINANCE 408 | [.]FINANCIAL 409 | [.]FIRE 410 | [.]FIRESTONE 411 | [.]FIRMDALE 412 | [.]FISH 413 | [.]FISHING 414 | [.]FIT 415 | [.]FITNESS 416 | [.]FJ 417 | [.]FK 418 | [.]FLICKR 419 | [.]FLIGHTS 420 | [.]FLIR 421 | [.]FLORIST 422 | [.]FLOWERS 423 | [.]FLY 424 | [.]FM 425 | [.]FO 426 | [.]FOO 427 | [.]FOOD 428 | [.]FOOTBALL 429 | [.]FORD 430 | [.]FOREX 431 | [.]FORSALE 432 | [.]FORUM 433 | [.]FOUNDATION 434 | [.]FOX 435 | [.]FR 436 | [.]FREE 437 | [.]FRESENIUS 438 | [.]FRL 439 | [.]FROGANS 440 | [.]FRONTIER 441 | [.]FTR 442 | [.]FUJITSU 443 | [.]FUN 444 | [.]FUND 445 | [.]FURNITURE 446 | [.]FUTBOL 447 | [.]FYI 448 | [.]GA 449 | [.]GAL 450 | [.]GALLERY 451 | [.]GALLO 452 | [.]GALLUP 453 | [.]GAME 454 | [.]GAMES 455 | [.]GAP 456 | [.]GARDEN 457 | [.]GAY 458 | [.]GB 459 | [.]GBIZ 460 | [.]GD 461 | [.]GDN 462 | [.]GE 463 | [.]GEA 464 | [.]GENT 465 | [.]GENTING 466 | [.]GEORGE 467 | [.]GF 468 | [.]GG 469 | [.]GGEE 470 | [.]GH 471 | [.]GI 472 | [.]GIFT 473 | [.]GIFTS 474 | [.]GIVES 475 | [.]GIVING 476 | [.]GL 477 | [.]GLASS 478 | [.]GLE 479 | [.]GLOBAL 480 | [.]GLOBO 481 | [.]GM 482 | [.]GMAIL 483 | [.]GMBH 484 | [.]GMO 485 | [.]GMX 486 | [.]GN 487 | [.]GODADDY 488 | [.]GOLD 489 | [.]GOLDPOINT 490 | [.]GOLF 491 | [.]GOO 492 | [.]GOODYEAR 493 | [.]GOOG 494 | [.]GOOGLE 495 | [.]GOP 496 | [.]GOT 497 | [.]GOV 498 | [.]GP 499 | [.]GQ 500 | [.]GR 501 | [.]GRAINGER 502 | [.]GRAPHICS 503 | [.]GRATIS 504 | [.]GREEN 505 | [.]GRIPE 506 | [.]GROCERY 507 | [.]GROUP 508 | [.]GS 509 | [.]GT 510 | [.]GU 511 | [.]GUCCI 512 | [.]GUGE 513 | [.]GUIDE 514 | [.]GUITARS 515 | [.]GURU 516 | [.]GW 517 | [.]GY 518 | [.]HAIR 519 | [.]HAMBURG 520 | [.]HANGOUT 521 | [.]HAUS 522 | [.]HBO 523 | [.]HDFC 524 | [.]HDFCBANK 525 | [.]HEALTH 526 | [.]HEALTHCARE 527 | [.]HELP 528 | [.]HELSINKI 529 | [.]HERE 530 | [.]HERMES 531 | [.]HIPHOP 532 | [.]HISAMITSU 533 | [.]HITACHI 534 | [.]HIV 535 | [.]HK 536 | [.]HKT 537 | [.]HM 538 | [.]HN 539 | [.]HOCKEY 540 | [.]HOLDINGS 541 | [.]HOLIDAY 542 | [.]HOMEDEPOT 543 | [.]HOMEGOODS 544 | [.]HOMES 545 | [.]HOMESENSE 546 | [.]HONDA 547 | [.]HORSE 548 | [.]HOSPITAL 549 | [.]HOST 550 | [.]HOSTING 551 | [.]HOT 552 | [.]HOTELS 553 | [.]HOTMAIL 554 | [.]HOUSE 555 | [.]HOW 556 | [.]HR 557 | [.]HSBC 558 | [.]HT 559 | [.]HU 560 | [.]HUGHES 561 | [.]HYATT 562 | [.]HYUNDAI 563 | [.]IBM 564 | [.]ICBC 565 | [.]ICE 566 | [.]ICU 567 | [.]ID 568 | [.]IE 569 | [.]IEEE 570 | [.]IFM 571 | [.]IKANO 572 | [.]IL 573 | [.]IM 574 | [.]IMAMAT 575 | [.]IMDB 576 | [.]IMMO 577 | [.]IMMOBILIEN 578 | [.]IN 579 | [.]INC 580 | [.]INDUSTRIES 581 | [.]INFINITI 582 | [.]INFO 583 | [.]ING 584 | [.]INK 585 | [.]INSTITUTE 586 | [.]INSURANCE 587 | [.]INSURE 588 | [.]INT 589 | [.]INTERNATIONAL 590 | [.]INTUIT 591 | [.]INVESTMENTS 592 | [.]IO 593 | [.]IPIRANGA 594 | [.]IQ 595 | [.]IR 596 | [.]IRISH 597 | [.]IS 598 | [.]ISMAILI 599 | [.]IST 600 | [.]ISTANBUL 601 | [.]IT 602 | [.]ITAU 603 | [.]ITV 604 | [.]JAGUAR 605 | [.]JAVA 606 | [.]JCB 607 | [.]JE 608 | [.]JEEP 609 | [.]JETZT 610 | [.]JEWELRY 611 | [.]JIO 612 | [.]JLL 613 | [.]JM 614 | [.]JMP 615 | [.]JNJ 616 | [.]JO 617 | [.]JOBS 618 | [.]JOBURG 619 | [.]JOT 620 | [.]JOY 621 | [.]JP 622 | [.]JPMORGAN 623 | [.]JPRS 624 | [.]JUEGOS 625 | [.]JUNIPER 626 | [.]KAUFEN 627 | [.]KDDI 628 | [.]KE 629 | [.]KERRYHOTELS 630 | [.]KERRYLOGISTICS 631 | [.]KERRYPROPERTIES 632 | [.]KFH 633 | [.]KG 634 | [.]KH 635 | [.]KI 636 | [.]KIA 637 | [.]KIDS 638 | [.]KIM 639 | [.]KINDLE 640 | [.]KITCHEN 641 | [.]KIWI 642 | [.]KM 643 | [.]KN 644 | [.]KOELN 645 | [.]KOMATSU 646 | [.]KOSHER 647 | [.]KP 648 | [.]KPMG 649 | [.]KPN 650 | [.]KR 651 | [.]KRD 652 | [.]KRED 653 | [.]KUOKGROUP 654 | [.]KW 655 | [.]KY 656 | [.]KYOTO 657 | [.]KZ 658 | [.]LA 659 | [.]LACAIXA 660 | [.]LAMBORGHINI 661 | [.]LAMER 662 | [.]LANCASTER 663 | [.]LAND 664 | [.]LANDROVER 665 | [.]LANXESS 666 | [.]LASALLE 667 | [.]LAT 668 | [.]LATINO 669 | [.]LATROBE 670 | [.]LAW 671 | [.]LAWYER 672 | [.]LB 673 | [.]LC 674 | [.]LDS 675 | [.]LEASE 676 | [.]LECLERC 677 | [.]LEFRAK 678 | [.]LEGAL 679 | [.]LEGO 680 | [.]LEXUS 681 | [.]LGBT 682 | [.]LI 683 | [.]LIDL 684 | [.]LIFE 685 | [.]LIFEINSURANCE 686 | [.]LIFESTYLE 687 | [.]LIGHTING 688 | [.]LIKE 689 | [.]LILLY 690 | [.]LIMITED 691 | [.]LIMO 692 | [.]LINCOLN 693 | [.]LINK 694 | [.]LIPSY 695 | [.]LIVE 696 | [.]LIVING 697 | [.]LK 698 | [.]LLC 699 | [.]LLP 700 | [.]LOAN 701 | [.]LOANS 702 | [.]LOCKER 703 | [.]LOCUS 704 | [.]LOL 705 | [.]LONDON 706 | [.]LOTTE 707 | [.]LOTTO 708 | [.]LOVE 709 | [.]LPL 710 | [.]LPLFINANCIAL 711 | [.]LR 712 | [.]LS 713 | [.]LT 714 | [.]LTD 715 | [.]LTDA 716 | [.]LU 717 | [.]LUNDBECK 718 | [.]LUXE 719 | [.]LUXURY 720 | [.]LV 721 | [.]LY 722 | [.]MA 723 | [.]MADRID 724 | [.]MAIF 725 | [.]MAISON 726 | [.]MAKEUP 727 | [.]MAN 728 | [.]MANAGEMENT 729 | [.]MANGO 730 | [.]MAP 731 | [.]MARKET 732 | [.]MARKETING 733 | [.]MARKETS 734 | [.]MARRIOTT 735 | [.]MARSHALLS 736 | [.]MATTEL 737 | [.]MBA 738 | [.]MC 739 | [.]MCKINSEY 740 | [.]MD 741 | [.]ME 742 | [.]MED 743 | [.]MEDIA 744 | [.]MEET 745 | [.]MELBOURNE 746 | [.]MEME 747 | [.]MEMORIAL 748 | [.]MEN 749 | [.]MENU 750 | [.]MERCKMSD 751 | [.]MG 752 | [.]MH 753 | [.]MIAMI 754 | [.]MICROSOFT 755 | [.]MIL 756 | [.]MINI 757 | [.]MINT 758 | [.]MIT 759 | [.]MITSUBISHI 760 | [.]MK 761 | [.]ML 762 | [.]MLB 763 | [.]MLS 764 | [.]MM 765 | [.]MMA 766 | [.]MN 767 | [.]MO 768 | [.]MOBI 769 | [.]MOBILE 770 | [.]MODA 771 | [.]MOE 772 | [.]MOI 773 | [.]MOM 774 | [.]MONASH 775 | [.]MONEY 776 | [.]MONSTER 777 | [.]MORMON 778 | [.]MORTGAGE 779 | [.]MOSCOW 780 | [.]MOTO 781 | [.]MOTORCYCLES 782 | [.]MOV 783 | [.]MOVIE 784 | [.]MP 785 | [.]MQ 786 | [.]MR 787 | [.]MS 788 | [.]MSD 789 | [.]MT 790 | [.]MTN 791 | [.]MTR 792 | [.]MU 793 | [.]MUSEUM 794 | [.]MUSIC 795 | [.]MV 796 | [.]MW 797 | [.]MX 798 | [.]MY 799 | [.]MZ 800 | [.]NA 801 | [.]NAB 802 | [.]NAGOYA 803 | [.]NAME 804 | [.]NATURA 805 | [.]NAVY 806 | [.]NBA 807 | [.]NC 808 | [.]NE 809 | [.]NEC 810 | [.]NET 811 | [.]NETBANK 812 | [.]NETFLIX 813 | [.]NETWORK 814 | [.]NEUSTAR 815 | [.]NEW 816 | [.]NEWS 817 | [.]NEXT 818 | [.]NEXTDIRECT 819 | [.]NEXUS 820 | [.]NF 821 | [.]NFL 822 | [.]NG 823 | [.]NGO 824 | [.]NHK 825 | [.]NI 826 | [.]NICO 827 | [.]NIKE 828 | [.]NIKON 829 | [.]NINJA 830 | [.]NISSAN 831 | [.]NISSAY 832 | [.]NL 833 | [.]NO 834 | [.]NOKIA 835 | [.]NORTON 836 | [.]NOW 837 | [.]NOWRUZ 838 | [.]NOWTV 839 | [.]NP 840 | [.]NR 841 | [.]NRA 842 | [.]NRW 843 | [.]NTT 844 | [.]NU 845 | [.]NYC 846 | [.]NZ 847 | [.]OBI 848 | [.]OBSERVER 849 | [.]OFFICE 850 | [.]OKINAWA 851 | [.]OLAYAN 852 | [.]OLAYANGROUP 853 | [.]OLLO 854 | [.]OM 855 | [.]OMEGA 856 | [.]ONE 857 | [.]ONG 858 | [.]ONL 859 | [.]ONLINE 860 | [.]OOO 861 | [.]OPEN 862 | [.]ORACLE 863 | [.]ORANGE 864 | [.]ORG 865 | [.]ORGANIC 866 | [.]ORIGINS 867 | [.]OSAKA 868 | [.]OTSUKA 869 | [.]OTT 870 | [.]OVH 871 | [.]PA 872 | [.]PAGE 873 | [.]PANASONIC 874 | [.]PARIS 875 | [.]PARS 876 | [.]PARTNERS 877 | [.]PARTS 878 | [.]PARTY 879 | [.]PAY 880 | [.]PCCW 881 | [.]PE 882 | [.]PET 883 | [.]PF 884 | [.]PFIZER 885 | [.]PG 886 | [.]PH 887 | [.]PHARMACY 888 | [.]PHD 889 | [.]PHILIPS 890 | [.]PHONE 891 | [.]PHOTO 892 | [.]PHOTOGRAPHY 893 | [.]PHOTOS 894 | [.]PHYSIO 895 | [.]PICS 896 | [.]PICTET 897 | [.]PICTURES 898 | [.]PID 899 | [.]PIN 900 | [.]PING 901 | [.]PINK 902 | [.]PIONEER 903 | [.]PIZZA 904 | [.]PK 905 | [.]PL 906 | [.]PLACE 907 | [.]PLAY 908 | [.]PLAYSTATION 909 | [.]PLUMBING 910 | [.]PLUS 911 | [.]PM 912 | [.]PN 913 | [.]PNC 914 | [.]POHL 915 | [.]POKER 916 | [.]POLITIE 917 | [.]PORN 918 | [.]POST 919 | [.]PR 920 | [.]PRAMERICA 921 | [.]PRAXI 922 | [.]PRESS 923 | [.]PRIME 924 | [.]PRO 925 | [.]PROD 926 | [.]PRODUCTIONS 927 | [.]PROF 928 | [.]PROGRESSIVE 929 | [.]PROMO 930 | [.]PROPERTIES 931 | [.]PROPERTY 932 | [.]PROTECTION 933 | [.]PRU 934 | [.]PRUDENTIAL 935 | [.]PS 936 | [.]PT 937 | [.]PUB 938 | [.]PW 939 | [.]PWC 940 | [.]PY 941 | [.]QA 942 | [.]QPON 943 | [.]QUEBEC 944 | [.]QUEST 945 | [.]RACING 946 | [.]RADIO 947 | [.]RE 948 | [.]READ 949 | [.]REALESTATE 950 | [.]REALTOR 951 | [.]REALTY 952 | [.]RECIPES 953 | [.]RED 954 | [.]REDSTONE 955 | [.]REDUMBRELLA 956 | [.]REHAB 957 | [.]REISE 958 | [.]REISEN 959 | [.]REIT 960 | [.]RELIANCE 961 | [.]REN 962 | [.]RENT 963 | [.]RENTALS 964 | [.]REPAIR 965 | [.]REPORT 966 | [.]REPUBLICAN 967 | [.]REST 968 | [.]RESTAURANT 969 | [.]REVIEW 970 | [.]REVIEWS 971 | [.]REXROTH 972 | [.]RICH 973 | [.]RICHARDLI 974 | [.]RICOH 975 | [.]RIL 976 | [.]RIO 977 | [.]RIP 978 | [.]RO 979 | [.]ROCKS 980 | [.]RODEO 981 | [.]ROGERS 982 | [.]ROOM 983 | [.]RS 984 | [.]RSVP 985 | [.]RU 986 | [.]RUGBY 987 | [.]RUHR 988 | [.]RUN 989 | [.]RW 990 | [.]RWE 991 | [.]RYUKYU 992 | [.]SA 993 | [.]SAARLAND 994 | [.]SAFE 995 | [.]SAFETY 996 | [.]SAKURA 997 | [.]SALE 998 | [.]SALON 999 | [.]SAMSCLUB 1000 | [.]SAMSUNG 1001 | [.]SANDVIK 1002 | [.]SANDVIKCOROMANT 1003 | [.]SANOFI 1004 | [.]SAP 1005 | [.]SARL 1006 | [.]SAS 1007 | [.]SAVE 1008 | [.]SAXO 1009 | [.]SB 1010 | [.]SBI 1011 | [.]SBS 1012 | [.]SC 1013 | [.]SCB 1014 | [.]SCHAEFFLER 1015 | [.]SCHMIDT 1016 | [.]SCHOLARSHIPS 1017 | [.]SCHOOL 1018 | [.]SCHULE 1019 | [.]SCHWARZ 1020 | [.]SCIENCE 1021 | [.]SCOT 1022 | [.]SD 1023 | [.]SE 1024 | [.]SEARCH 1025 | [.]SEAT 1026 | [.]SECURE 1027 | [.]SECURITY 1028 | [.]SEEK 1029 | [.]SELECT 1030 | [.]SENER 1031 | [.]SERVICES 1032 | [.]SEVEN 1033 | [.]SEW 1034 | [.]SEX 1035 | [.]SEXY 1036 | [.]SFR 1037 | [.]SG 1038 | [.]SH 1039 | [.]SHANGRILA 1040 | [.]SHARP 1041 | [.]SHAW 1042 | [.]SHELL 1043 | [.]SHIA 1044 | [.]SHIKSHA 1045 | [.]SHOES 1046 | [.]SHOP 1047 | [.]SHOPPING 1048 | [.]SHOUJI 1049 | [.]SHOW 1050 | [.]SI 1051 | [.]SILK 1052 | [.]SINA 1053 | [.]SINGLES 1054 | [.]SITE 1055 | [.]SJ 1056 | [.]SK 1057 | [.]SKI 1058 | [.]SKIN 1059 | [.]SKY 1060 | [.]SKYPE 1061 | [.]SL 1062 | [.]SLING 1063 | [.]SM 1064 | [.]SMART 1065 | [.]SMILE 1066 | [.]SN 1067 | [.]SNCF 1068 | [.]SO 1069 | [.]SOCCER 1070 | [.]SOCIAL 1071 | [.]SOFTBANK 1072 | [.]SOFTWARE 1073 | [.]SOHU 1074 | [.]SOLAR 1075 | [.]SOLUTIONS 1076 | [.]SONG 1077 | [.]SONY 1078 | [.]SOY 1079 | [.]SPA 1080 | [.]SPACE 1081 | [.]SPORT 1082 | [.]SPOT 1083 | [.]SR 1084 | [.]SRL 1085 | [.]SS 1086 | [.]ST 1087 | [.]STADA 1088 | [.]STAPLES 1089 | [.]STAR 1090 | [.]STATEBANK 1091 | [.]STATEFARM 1092 | [.]STC 1093 | [.]STCGROUP 1094 | [.]STOCKHOLM 1095 | [.]STORAGE 1096 | [.]STORE 1097 | [.]STREAM 1098 | [.]STUDIO 1099 | [.]STUDY 1100 | [.]STYLE 1101 | [.]SU 1102 | [.]SUCKS 1103 | [.]SUPPLIES 1104 | [.]SUPPLY 1105 | [.]SUPPORT 1106 | [.]SURF 1107 | [.]SURGERY 1108 | [.]SUZUKI 1109 | [.]SV 1110 | [.]SWATCH 1111 | [.]SWISS 1112 | [.]SX 1113 | [.]SY 1114 | [.]SYDNEY 1115 | [.]SYSTEMS 1116 | [.]SZ 1117 | [.]TAB 1118 | [.]TAIPEI 1119 | [.]TALK 1120 | [.]TAOBAO 1121 | [.]TARGET 1122 | [.]TATAMOTORS 1123 | [.]TATAR 1124 | [.]TATTOO 1125 | [.]TAX 1126 | [.]TAXI 1127 | [.]TC 1128 | [.]TCI 1129 | [.]TD 1130 | [.]TDK 1131 | [.]TEAM 1132 | [.]TECH 1133 | [.]TECHNOLOGY 1134 | [.]TEL 1135 | [.]TEMASEK 1136 | [.]TENNIS 1137 | [.]TEVA 1138 | [.]TF 1139 | [.]TG 1140 | [.]TH 1141 | [.]THD 1142 | [.]THEATER 1143 | [.]THEATRE 1144 | [.]TIAA 1145 | [.]TICKETS 1146 | [.]TIENDA 1147 | [.]TIPS 1148 | [.]TIRES 1149 | [.]TIROL 1150 | [.]TJ 1151 | [.]TJMAXX 1152 | [.]TJX 1153 | [.]TK 1154 | [.]TKMAXX 1155 | [.]TL 1156 | [.]TM 1157 | [.]TMALL 1158 | [.]TN 1159 | [.]TO 1160 | [.]TODAY 1161 | [.]TOKYO 1162 | [.]TOOLS 1163 | [.]TOP 1164 | [.]TORAY 1165 | [.]TOSHIBA 1166 | [.]TOTAL 1167 | [.]TOURS 1168 | [.]TOWN 1169 | [.]TOYOTA 1170 | [.]TOYS 1171 | [.]TR 1172 | [.]TRADE 1173 | [.]TRADING 1174 | [.]TRAINING 1175 | [.]TRAVEL 1176 | [.]TRAVELERS 1177 | [.]TRAVELERSINSURANCE 1178 | [.]TRUST 1179 | [.]TRV 1180 | [.]TT 1181 | [.]TUBE 1182 | [.]TUI 1183 | [.]TUNES 1184 | [.]TUSHU 1185 | [.]TV 1186 | [.]TVS 1187 | [.]TW 1188 | [.]TZ 1189 | [.]UA 1190 | [.]UBANK 1191 | [.]UBS 1192 | [.]UG 1193 | [.]UK 1194 | [.]UNICOM 1195 | [.]UNIVERSITY 1196 | [.]UNO 1197 | [.]UOL 1198 | [.]UPS 1199 | [.]US 1200 | [.]UY 1201 | [.]UZ 1202 | [.]VA 1203 | [.]VACATIONS 1204 | [.]VANA 1205 | [.]VANGUARD 1206 | [.]VC 1207 | [.]VE 1208 | [.]VEGAS 1209 | [.]VENTURES 1210 | [.]VERISIGN 1211 | [.]VERSICHERUNG 1212 | [.]VET 1213 | [.]VG 1214 | [.]VI 1215 | [.]VIAJES 1216 | [.]VIDEO 1217 | [.]VIG 1218 | [.]VIKING 1219 | [.]VILLAS 1220 | [.]VIN 1221 | [.]VIP 1222 | [.]VIRGIN 1223 | [.]VISA 1224 | [.]VISION 1225 | [.]VIVA 1226 | [.]VIVO 1227 | [.]VLAANDEREN 1228 | [.]VN 1229 | [.]VODKA 1230 | [.]VOLVO 1231 | [.]VOTE 1232 | [.]VOTING 1233 | [.]VOTO 1234 | [.]VOYAGE 1235 | [.]VU 1236 | [.]WALES 1237 | [.]WALMART 1238 | [.]WALTER 1239 | [.]WANG 1240 | [.]WANGGOU 1241 | [.]WATCH 1242 | [.]WATCHES 1243 | [.]WEATHER 1244 | [.]WEATHERCHANNEL 1245 | [.]WEBCAM 1246 | [.]WEBER 1247 | [.]WEBSITE 1248 | [.]WED 1249 | [.]WEDDING 1250 | [.]WEIBO 1251 | [.]WEIR 1252 | [.]WF 1253 | [.]WHOSWHO 1254 | [.]WIEN 1255 | [.]WIKI 1256 | [.]WILLIAMHILL 1257 | [.]WIN 1258 | [.]WINDOWS 1259 | [.]WINE 1260 | [.]WINNERS 1261 | [.]WME 1262 | [.]WOLTERSKLUWER 1263 | [.]WOODSIDE 1264 | [.]WORK 1265 | [.]WORKS 1266 | [.]WORLD 1267 | [.]WOW 1268 | [.]WS 1269 | [.]WTC 1270 | [.]WTF 1271 | [.]XBOX 1272 | [.]XEROX 1273 | [.]XIHUAN 1274 | [.]XIN 1275 | [.]XN--11B4C3D 1276 | [.]XN--1CK2E1B 1277 | [.]XN--1QQW23A 1278 | [.]XN--2SCRJ9C 1279 | [.]XN--30RR7Y 1280 | [.]XN--3BST00M 1281 | [.]XN--3DS443G 1282 | [.]XN--3E0B707E 1283 | [.]XN--3HCRJ9C 1284 | [.]XN--3PXU8K 1285 | [.]XN--42C2D9A 1286 | [.]XN--45BR5CYL 1287 | [.]XN--45BRJ9C 1288 | [.]XN--45Q11C 1289 | [.]XN--4DBRK0CE 1290 | [.]XN--4GBRIM 1291 | [.]XN--54B7FTA0CC 1292 | [.]XN--55QW42G 1293 | [.]XN--55QX5D 1294 | [.]XN--5SU34J936BGSG 1295 | [.]XN--5TZM5G 1296 | [.]XN--6FRZ82G 1297 | [.]XN--6QQ986B3XL 1298 | [.]XN--80ADXHKS 1299 | [.]XN--80AO21A 1300 | [.]XN--80AQECDR1A 1301 | [.]XN--80ASEHDB 1302 | [.]XN--80ASWG 1303 | [.]XN--8Y0A063A 1304 | [.]XN--90A3AC 1305 | [.]XN--90AE 1306 | [.]XN--90AIS 1307 | [.]XN--9DBQ2A 1308 | [.]XN--9ET52U 1309 | [.]XN--9KRT00A 1310 | [.]XN--B4W605FERD 1311 | [.]XN--BCK1B9A5DRE4C 1312 | [.]XN--C1AVG 1313 | [.]XN--C2BR7G 1314 | [.]XN--CCK2B3B 1315 | [.]XN--CCKWCXETD 1316 | [.]XN--CG4BKI 1317 | [.]XN--CLCHC0EA0B2G2A9GCD 1318 | [.]XN--CZR694B 1319 | [.]XN--CZRS0T 1320 | [.]XN--CZRU2D 1321 | [.]XN--D1ACJ3B 1322 | [.]XN--D1ALF 1323 | [.]XN--E1A4C 1324 | [.]XN--ECKVDTC9D 1325 | [.]XN--EFVY88H 1326 | [.]XN--FCT429K 1327 | [.]XN--FHBEI 1328 | [.]XN--FIQ228C5HS 1329 | [.]XN--FIQ64B 1330 | [.]XN--FIQS8S 1331 | [.]XN--FIQZ9S 1332 | [.]XN--FJQ720A 1333 | [.]XN--FLW351E 1334 | [.]XN--FPCRJ9C3D 1335 | [.]XN--FZC2C9E2C 1336 | [.]XN--FZYS8D69UVGM 1337 | [.]XN--G2XX48C 1338 | [.]XN--GCKR3F0F 1339 | [.]XN--GECRJ9C 1340 | [.]XN--GK3AT1E 1341 | [.]XN--H2BREG3EVE 1342 | [.]XN--H2BRJ9C 1343 | [.]XN--H2BRJ9C8C 1344 | [.]XN--HXT814E 1345 | [.]XN--I1B6B1A6A2E 1346 | [.]XN--IMR513N 1347 | [.]XN--IO0A7I 1348 | [.]XN--J1AEF 1349 | [.]XN--J1AMH 1350 | [.]XN--J6W193G 1351 | [.]XN--JLQ480N2RG 1352 | [.]XN--JVR189M 1353 | [.]XN--KCRX77D1X4A 1354 | [.]XN--KPRW13D 1355 | [.]XN--KPRY57D 1356 | [.]XN--KPUT3I 1357 | [.]XN--L1ACC 1358 | [.]XN--LGBBAT1AD8J 1359 | [.]XN--MGB9AWBF 1360 | [.]XN--MGBA3A3EJT 1361 | [.]XN--MGBA3A4F16A 1362 | [.]XN--MGBA7C0BBN0A 1363 | [.]XN--MGBAAM7A8H 1364 | [.]XN--MGBAB2BD 1365 | [.]XN--MGBAH1A3HJKRD 1366 | [.]XN--MGBAI9AZGQP6J 1367 | [.]XN--MGBAYH7GPA 1368 | [.]XN--MGBBH1A 1369 | [.]XN--MGBBH1A71E 1370 | [.]XN--MGBC0A9AZCG 1371 | [.]XN--MGBCA7DZDO 1372 | [.]XN--MGBCPQ6GPA1A 1373 | [.]XN--MGBERP4A5D4AR 1374 | [.]XN--MGBGU82A 1375 | [.]XN--MGBI4ECEXP 1376 | [.]XN--MGBPL2FH 1377 | [.]XN--MGBT3DHD 1378 | [.]XN--MGBTX2B 1379 | [.]XN--MGBX4CD0AB 1380 | [.]XN--MIX891F 1381 | [.]XN--MK1BU44C 1382 | [.]XN--MXTQ1M 1383 | [.]XN--NGBC5AZD 1384 | [.]XN--NGBE9E0A 1385 | [.]XN--NGBRX 1386 | [.]XN--NODE 1387 | [.]XN--NQV7F 1388 | [.]XN--NQV7FS00EMA 1389 | [.]XN--NYQY26A 1390 | [.]XN--O3CW4H 1391 | [.]XN--OGBPF8FL 1392 | [.]XN--OTU796D 1393 | [.]XN--P1ACF 1394 | [.]XN--P1AI 1395 | [.]XN--PGBS0DH 1396 | [.]XN--PSSY2U 1397 | [.]XN--Q7CE6A 1398 | [.]XN--Q9JYB4C 1399 | [.]XN--QCKA1PMC 1400 | [.]XN--QXA6A 1401 | [.]XN--QXAM 1402 | [.]XN--RHQV96G 1403 | [.]XN--ROVU88B 1404 | [.]XN--RVC1E0AM3E 1405 | [.]XN--S9BRJ9C 1406 | [.]XN--SES554G 1407 | [.]XN--T60B56A 1408 | [.]XN--TCKWE 1409 | [.]XN--TIQ49XQYJ 1410 | [.]XN--UNUP4Y 1411 | [.]XN--VERMGENSBERATER-CTB 1412 | [.]XN--VERMGENSBERATUNG-PWB 1413 | [.]XN--VHQUV 1414 | [.]XN--VUQ861B 1415 | [.]XN--W4R85EL8FHU5DNRA 1416 | [.]XN--W4RS40L 1417 | [.]XN--WGBH1C 1418 | [.]XN--WGBL6A 1419 | [.]XN--XHQ521B 1420 | [.]XN--XKC2AL3HYE2A 1421 | [.]XN--XKC2DL3A5EE0H 1422 | [.]XN--Y9A3AQ 1423 | [.]XN--YFRO4I67O 1424 | [.]XN--YGBI2AMMX 1425 | [.]XN--ZFR164B 1426 | [.]XXX 1427 | [.]XYZ 1428 | [.]YACHTS 1429 | [.]YAHOO 1430 | [.]YAMAXUN 1431 | [.]YANDEX 1432 | [.]YE 1433 | [.]YODOBASHI 1434 | [.]YOGA 1435 | [.]YOKOHAMA 1436 | [.]YOU 1437 | [.]YOUTUBE 1438 | [.]YT 1439 | [.]YUN 1440 | [.]ZA 1441 | [.]ZAPPOS 1442 | [.]ZARA 1443 | [.]ZERO 1444 | [.]ZIP 1445 | [.]ZM 1446 | [.]ZONE 1447 | [.]ZUERICH 1448 | [.]ZW 1449 | -------------------------------------------------------------------------------- /cidr.txt: -------------------------------------------------------------------------------- 1 | 0.0.0.0/20 2 | -------------------------------------------------------------------------------- /exclude.txt: -------------------------------------------------------------------------------- 1 | # List of addresses to exlude from scanning 2 | 255.255.255.255 3 | -------------------------------------------------------------------------------- /scancannon.conf: -------------------------------------------------------------------------------- 1 | # Masscan Config for ScanCannon (this is just a renamed masscan.conf file) 2 | # See https://github.com/robertdavidgraham/masscan for options and warnings 3 | 4 | rate = 20000.00 5 | excludefile = exclude.txt 6 | ports = 2-65535 7 | output-status = all 8 | output-append = true 9 | # adapter-ip = 192.168.10.123 10 | # adapter-mac = 00-00-00-00-00-00 11 | # router-mac = 66-55-44-33-22-11 12 | -------------------------------------------------------------------------------- /scancannon.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -euo pipefail 3 | 4 | #Logging 5 | LOG_FILE="scancannon.log" 6 | exec > >(tee -a "$LOG_FILE") 2>&1 7 | 8 | echo "" 9 | echo "███████╗ ██████╗ █████╗ ███╗ ██╗ ██████╗ █████╗ ███╗ ██╗███╗ ██╗ ██████╗ ███╗ ██╗"; 10 | echo "██╔════╝██╔════╝██╔══██╗████╗ ██║██╔════╝██╔══██╗████╗ ██║████╗ ██║██╔═══██╗████╗ ██║"; 11 | echo "███████╗██║ ███████║██╔██╗ ██║██║ ███████║██╔██╗ ██║██╔██╗ ██║██║ ██║██╔██╗ ██║"; 12 | echo "╚════██║██║ ██╔══██║██║╚██╗██║██║ ██╔══██║██║╚██╗██║██║╚██╗██║██║ ██║██║╚██╗██║"; 13 | echo "███████║╚██████╗██║ ██║██║ ╚████║╚██████╗██║ ██║██║ ╚████║██║ ╚████║╚██████╔╝██║ ╚████║"; 14 | echo "╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═══╝"; 15 | 16 | echo -e "••¤(×[¤ ScanCannon v1.0 by J0hnnyXm4s ¤]×)¤••\n" 17 | 18 | # Check for updates 19 | # Use the same branch name for checking and pulling 20 | REMOTE_TIMESTAMP1=$(git log origin/main -n 1 --pretty=format:%cd scancannon.sh | awk '{print $1, $3, $2, $5, $4}') 21 | LOCAL_TIMESTAMP=$(date -r "scancannon.sh" +%s) 22 | #Check if MacOS 23 | if [ "$(uname)" = "Darwin" ]; then 24 | MACOS=1 25 | REMOTE_TIMESTAMP=$(date -j -f "%a %d %b %Y %T" "$REMOTE_TIMESTAMP1" +%s) 26 | else 27 | MACOS=0 28 | REMOTE_TIMESTAMP=$(date -d "$REMOTE_TIMESTAMP1" +%s) 29 | fi 30 | 31 | if [[ "$REMOTE_TIMESTAMP" > "$LOCAL_TIMESTAMP" ]]; then 32 | read -r -p "A new version of ScanCannon is available. Do you want to update? [y/N]: " update_choice 33 | case "$update_choice" in 34 | y|Y ) 35 | if git pull origin main; then 36 | echo "ScanCannon has been updated successfully." 37 | else 38 | echo "Failed to update ScanCannon via git. Please manually download the latest version from https://github.com/johnnyxmas/ScanCannon/" 39 | fi 40 | ;; 41 | * ) 42 | echo "Update skipped. Continuing with the current version." 43 | ;; 44 | esac 45 | fi 46 | 47 | #Help Text: 48 | function helptext() { 49 | echo -e "\nScanCannon: a program to enumerate and parse a large range of public networks, primarily for determining potential attack vectors" 50 | echo "usage: scancannon.sh [-u] [CIDR range | file containing line-separated CIDR ranges]" 51 | echo " -u Perform UDP scan on common ports (53, 161, 500) using nmap" 52 | } 53 | 54 | #Check if required tools are installed 55 | for tool in masscan nmap dig whois; do 56 | if ! command -v "$tool" >/dev/null 2>&1; then 57 | echo "ERROR: $tool is not installed. Please install it and try again." 58 | exit 1 59 | fi 60 | done 61 | 62 | # Check if masscan configuration file exists 63 | if [ ! -f "scancannon.conf" ]; then 64 | echo "ERROR: scancannon.conf not found. Please ensure the configuration file exists." 65 | exit 1 66 | fi 67 | 68 | # Check if the configuration is compatible with the system 69 | if [ "$MACOS" -eq 1 ]; then 70 | # Check if masscan config has adapter settings compatible with macOS 71 | if grep -q "adapter =" "scancannon.conf" && ! ifconfig | grep -q "$(grep "adapter =" "scancannon.conf" | cut -d'=' -f2 | tr -d ' ')"; then 72 | echo "WARNING: The network adapter in scancannon.conf may not exist on this system." 73 | echo "Please verify your masscan configuration before continuing." 74 | read -r -p "Continue anyway? [y/N]: " continue_choice 75 | if [[ ! $continue_choice =~ ^[Yy]$ ]]; then 76 | exit 1 77 | fi 78 | fi 79 | fi 80 | 81 | #Parse command line options 82 | UDP_SCAN=0 83 | while getopts ":u" opt; do 84 | case ${opt} in 85 | u ) 86 | UDP_SCAN=1 87 | ;; 88 | ? ) 89 | echo "Invalid option: $OPTARG" 1>&2 90 | helptext 91 | exit 1 92 | ;; 93 | esac 94 | done 95 | shift $((OPTIND -1)) 96 | 97 | #Make sure an argument is supplied: 98 | if [ "$#" -ne 1 ]; then 99 | echo "ERROR: Invalid argument(s)." 100 | helptext >&2 101 | exit 1 102 | fi 103 | 104 | #Check if the argument is a valid CIDR range or a file 105 | if echo "$1" | grep -qE '^([0-9]{1,3}\.){3}[0-9]{1,3}(/(3[0-2]|[12]?[0-9]))?$'; then 106 | CIDR_RANGES=("$1") 107 | elif [ -s "$1" ]; then 108 | # Replace readarray with a more compatible approach 109 | CIDR_RANGES=() 110 | while IFS= read -r line; do 111 | [[ -n "$line" ]] && CIDR_RANGES+=("$line") 112 | done < "$1" 113 | else 114 | echo "ERROR: Invalid CIDR range or file." 115 | helptext >&2 116 | exit 1 117 | fi 118 | 119 | #Check for root: 120 | if [ "$(id -u)" != "0" ]; then 121 | echo "ERROR: This script must be run as root" 122 | helptext >&2 123 | exit 1 124 | fi 125 | 126 | #Alert for existing Results files 127 | if [ -s "./results" ]; then 128 | read -p "Results folder exists. New results will be combined with existing. Re-scanning previous subnets will overwrite some files. Proceed?" -n 1 -r 129 | echo 130 | if [[ ! $REPLY =~ ^[Yy]$ ]]; then 131 | exit 1 132 | fi 133 | else 134 | mkdir "results" 135 | fi 136 | 137 | #Download and prep the lastest list of TLDs from IANA 138 | if [ -s "./all_tlds.txt" ]; then 139 | rm "./all_tlds.txt" 140 | fi 141 | if ! wget https://data.iana.org/TLD/tlds-alpha-by-domain.txt -O "./all_tlds.txt"; then 142 | echo "ERROR: Failed to download TLD list. Please check your internet connection and try again." 143 | exit 1 144 | fi 145 | # Replace vi with sed for better compatibility 146 | sed -i '1d' "all_tlds.txt" 147 | sed -i 's/^/[.]/g' "all_tlds.txt" 148 | 149 | #Prep packet filter for masscan. If you are using something else, you MUST do this manually. 150 | if [ "$MACOS" != 1 ]; then 151 | if iptables -C INPUT -p tcp --dport 40000:41023 -j DROP 2>/dev/null; then 152 | echo "Packet filter rule already exists. Skipping addition." 153 | else 154 | iptables -A INPUT -p tcp --dport 40000:41023 -j DROP 155 | fi 156 | else 157 | # Check if rule already exists before modifying pf.conf 158 | if ! grep -q 'block in proto tcp from any to any port 40000 >< 41024' /etc/pf.conf; then 159 | cp /etc/pf.conf /etc/pf.bak 160 | echo 'block in proto tcp from any to any port 40000 >< 41024' >>/etc/pf.conf 161 | pfctl -f /etc/pf.conf 162 | else 163 | echo "Packet filter rule already exists. Skipping addition." 164 | fi 165 | fi 166 | 167 | #Initialize variables for summary 168 | TOTAL_IPS=0 169 | RESPONSIVE_IPS=0 170 | DISCOVERED_SERVICES=0 171 | 172 | # Handle Ctrl+C 173 | function ctrl_c() { 174 | echo -e "\n\n[!] Ctrl+C detected. Cleaning up..." 175 | cleanup 176 | echo -e "Exiting." 177 | exit 0 178 | } 179 | trap ctrl_c INT 180 | 181 | #Process each CIDR range 182 | for CIDR in "${CIDR_RANGES[@]}"; do 183 | echo "Scanning $CIDR..." 184 | #make results directories named after subnet: 185 | # Handle special characters in directory names 186 | DIRNAME="$(echo "$CIDR" | sed -e 's/\//_/g' -e 's/ /_/g' -e 's/[^a-zA-Z0-9_.-]/_/g')" 187 | echo "Creating results directory for $CIDR. . ." 188 | mkdir -p "./results/$DIRNAME" 189 | #Start Masscan. Write to binary file so users can --readscan it to whatever they need later: 190 | echo -e "\n*** Firing ScanCannon. Please keep arms and legs inside the chamber at all times ***" 191 | # Quote variables to handle spaces and special characters 192 | masscan -c scancannon.conf --open --source-port 40000 -oB "./results/${DIRNAME}/masscan_output.bin" "$CIDR" 193 | masscan --readscan "./results/${DIRNAME}/masscan_output.bin" -oL "./results/${DIRNAME}/masscan_output.txt" 194 | 195 | #Update total IPs scanned 196 | # Fix IP calculation with error handling 197 | TOTAL_IPS=$((TOTAL_IPS + $(echo "$CIDR" | awk -F/ '{ 198 | if (NF > 1 && $2 != "") { 199 | print 2^(32-$2) 200 | } else { 201 | print 1 # Default to 1 if CIDR notation is missing 202 | } 203 | }'))) 204 | 205 | if [ ! -s "./results/${DIRNAME}/masscan_output.txt" ]; then 206 | echo -e "\nNo IPs are up; skipping nmap. This was a big waste of time.\n" 207 | continue 208 | fi 209 | 210 | #Consolidate IPs and open ports for each IP: 211 | awk '/open/ {print $4,$3,$2,$1}' "./results/${DIRNAME}/masscan_output.txt" | awk ' 212 | /.+/{ 213 | if (!($1 in Val)) { Key[++i] = $1; } 214 | Val[$1] = Val[$1] $2 ","; 215 | } 216 | END{ 217 | for (j = 1; j <= i; j++) { 218 | printf("%s:%s\n%s", Key[j], Val[Key[j]], (j == i) ? "" : ""); 219 | } 220 | }' | sed 's/,$//' >>"./results/${DIRNAME}/hosts_and_ports.txt" 221 | 222 | #Update responsive IPs count 223 | RESPONSIVE_IPS=$((RESPONSIVE_IPS + $(awk '{print $1}' "./results/${DIRNAME}/hosts_and_ports.txt" | sort -u | wc -l))) 224 | 225 | # Initialize progress bar 226 | TOTAL_HOSTS=$(wc -l < "./results/${DIRNAME}/hosts_and_ports.txt") 227 | CURRENT_HOST=0 228 | 229 | #Run in-depth nmap enumeration against discovered hosts & ports, and output to all formats 230 | #First we have to do a blind UDP nmap scan of common ports, as masscan does not support UDP. Note we Ping here to reduce scan time. 231 | if [ "$UDP_SCAN" -eq 1 ]; then 232 | echo -e "\nStarting DNS, SNMP and VPN scan against all hosts" 233 | nmap -v --open -sV --version-light -sU -T3 -p 53,161,500 -oA "./results/${DIRNAME}/nmap_${DIRNAME}_udp" "$CIDR" 234 | fi 235 | #Then nmap TCP against masscan-discovered hosts: 236 | while read -r TARGET; do 237 | IP="$(echo "$TARGET" | awk -F: '{print $1}')" 238 | PORT="$(echo "$TARGET" | awk -F: '{print $2}')" 239 | FILENAME="$(echo "$IP" | awk '{print "nmap_"$1}')" 240 | echo -e "\nBeginning in-depth TCP scan of $IP on port(s) $PORT:\n" 241 | nmap -v --open -sV --version-light -sT -O -Pn -T3 -p "$PORT" -oA "./results/${DIRNAME}/${FILENAME}_tcp" "$IP" 242 | 243 | # Update progress bar 244 | CURRENT_HOST=$((CURRENT_HOST + 1)) 245 | PROGRESS=$((CURRENT_HOST * 100 / TOTAL_HOSTS)) 246 | echo -ne "\rProgress: [$PROGRESS%] [$CURRENT_HOST/$TOTAL_HOSTS] hosts scanned..." 247 | done <"./results/${DIRNAME}/hosts_and_ports.txt" 248 | echo -ne "\rProgress: [100%] [$TOTAL_HOSTS/$TOTAL_HOSTS] hosts scanned...Done.\n" 249 | 250 | #Generate lists of Hosts:Ports hosting Interesting Services™️ for importing into cred stuffers (or other tools) 251 | mkdir -p "./results/${DIRNAME}/interesting_servers/" 252 | mkdir -p "./results/all_interesting_servers/" 253 | #(if you add to this service list, make sure you also add it to the master file generation list at the end.) 254 | for SERVICE in domain msrpc snmp netbios-ssn microsoft-ds isakmp l2f pptp ftp sftp ssh telnet http ssl https; do 255 | # Improved service detection to handle multiple matches 256 | if grep -h -o -E "$SERVICE/.+/.+[0-9]+/open/.+/$SERVICE" "./results/${DIRNAME}"/*.gnmap > /dev/null 2>&1; then 257 | # Process each match individually 258 | grep -h -o -E "$SERVICE/.+/.+[0-9]+/open/.+/$SERVICE" "./results/${DIRNAME}"/*.gnmap | while read -r RESULT; do 259 | SERVIP="$(echo "$RESULT" | awk -F" " '{print $2}')" 260 | SERVPORT="$(echo "$RESULT" | awk -F"/" '{print $3}')" 261 | 262 | if [ -n "$SERVIP" ] && [ -n "$SERVPORT" ]; then 263 | echo "$SERVIP":"$SERVPORT" | tee -a "./results/${DIRNAME}/interesting_servers/${SERVICE}_servers.txt" >>"./results/all_interesting_servers/all_${SERVICE}_servers.txt" 264 | DISCOVERED_SERVICES=$((DISCOVERED_SERVICES + 1)) 265 | fi 266 | done 267 | fi 268 | done 269 | 270 | #Generate list of discovered sub/domains for this subnet. 271 | echo "Root Domain,IP,CIDR,AS#,IP Owner" | tee "./results/${DIRNAME}/resolved_root_domains.csv" >>"./results/all_root_domains.csv" 272 | while read -r TLD; do 273 | grep -E -i "$TLD" "./results/${DIRNAME}"/*.gnmap | awk -F[\(\)] '{print $2}' | sort -u | tee "./results/${DIRNAME}/resolved_subdomains.txt" >>"./results/all_subdomains.txt" 274 | done <"./all_tlds.txt" 275 | while read -r DOMAIN; do 276 | DIG="$(dig "$DOMAIN" +short)" 277 | if [ -n "$DIG" ]; then 278 | # More robust whois parsing 279 | WHOIS="$(whois "$DIG" | awk -F':[ ]*' ' 280 | /CIDR:/ { cidr = $2 }; 281 | /Organization:/ { org = $2 }; 282 | /OriginAS:/ { asn = $2 } 283 | END { 284 | if (cidr != "" || asn != "" || org != "") { 285 | printf "%s,%s,%s", cidr, asn, org 286 | } else { 287 | print "N/A,N/A,N/A" 288 | } 289 | }')" 290 | echo "$DOMAIN"",""$DIG"",""$WHOIS" | tee -a "./results/${DIRNAME}/resolved_root_domains.csv" >>"./results/all_root_domains.csv" 291 | fi 292 | done < <(awk -F. '{ print $(NF-1)"."$NF }' "./results/${DIRNAME}/resolved_subdomains.txt") 293 | done 294 | 295 | #Restore packet filter backup 296 | echo -e "\nAll scans completed. Reverting packet filter configuration. . . " 297 | if [ "$MACOS" != 1 ]; then 298 | iptables -D INPUT -p tcp --dport 40000:41023 -j DROP 299 | else 300 | mv /etc/pf.bak /etc/pf.conf 301 | pfctl -q -f /etc/pf.conf 302 | fi 303 | 304 | #Report unresponsive networks: 305 | # Improved unresponsive networks detection 306 | echo "Identifying unresponsive networks..." 307 | find ./results -type d -name "*_*" | while read -r dir; do 308 | dirname=$(basename "$dir") 309 | if [ ! -f "$dir/hosts_and_ports.txt" ]; then 310 | echo "$dirname" | sed 's/_/\//g' >> "./results/dead_networks.txt" 311 | fi 312 | done 313 | 314 | #Housekeeping 315 | function cleanup() { 316 | echo -e "\nPerforming cleanup. . . " 317 | # Check if paused.conf exists before removing 318 | if [ -f ./paused.conf ]; then 319 | rm ./paused.conf 320 | fi 321 | for DIRECTORY in ./results/*/; do 322 | # Create directories before moving files 323 | mkdir -p "${DIRECTORY}nmap_files" "${DIRECTORY}gnmap_files" "${DIRECTORY}nmap_xml_files" 324 | # Use quotes to handle spaces in filenames 325 | mv -f "${DIRECTORY}"*.nmap "${DIRECTORY}nmap_files/" 2>/dev/null 326 | mv -f "${DIRECTORY}"*.gnmap "${DIRECTORY}gnmap_files/" 2>/dev/null 327 | mv -f "${DIRECTORY}"*.xml "${DIRECTORY}nmap_xml_files/" 2>/dev/null 328 | rm -rf "./results/all_interesting_servers/"*_files 2>/dev/null 329 | done 330 | chmod -R 776 "./results" 331 | } 332 | 333 | #Print summary 334 | echo -e "\nScan Summary:" 335 | echo "Total IPs Scanned: $TOTAL_IPS" 336 | echo "Responsive IPs: $RESPONSIVE_IPS" 337 | echo "Discovered Services: $DISCOVERED_SERVICES" 338 | 339 | echo -e "\n【 Powering down ScanCannon. Please check for any personal belongings before exiting the shell 】" 340 | 341 | # Call cleanup function at the end of script 342 | cleanup 343 | --------------------------------------------------------------------------------