This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org

Difference between revisions of "OWASP Web Mapper Project"

From OWASP
Jump to: navigation, search
(OWASP Web Mapper Project)
 
(95 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
=Main=
 
=Main=
  
Details TBD. Please refer to TODO file at code repository:
 
 
https://github.com/yangsec888/wmap/blob/master/TODO
 
 
<!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->
 
<!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->
 
<div style="width:100%;height:160px;border:0,margin:0;overflow: hidden;">[[File:OWASP_Project_Header.jpg|link=]]</div>
 
<div style="width:100%;height:160px;border:0,margin:0;overflow: hidden;">[[File:OWASP_Project_Header.jpg|link=]]</div>
Line 11: Line 8:
 
| valign="top"  style="border-right: 1px dotted gray;padding-right:25px;" |
 
| valign="top"  style="border-right: 1px dotted gray;padding-right:25px;" |
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
Instructions are in RED text and should be removed from your document by deleting the text with the span tags. This document is intended to serve as an example of what is required of an OWASP project wiki page. The text in red serves as instructions, while the text in black serves as an example. Text in black is expected to be replaced entirely with information specific to your OWASP project.
 
</span>
 
  
==Web Mapper Project==
 
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
==OWASP Web Mapper Project==
<span style="color:#ff0000">
 
This is where you need to add your more robust project description. A project description should outline the purpose of the project, and the value it provides to application security. Ideally, project descriptions should be written in such a way that there is no question what value the project provides to the software security community. This section will be seen and used in various places within the Projects Portal. Poorly written project descriptions therefore detract from a project’s visibility, and project leaders should ensure that the description is meaningful.
 
</span>
 
  
;lasdkhsldjkhgsdfigupwoer
 
  
==Description==
+
What if there are quite a few web applications under your organization, but nobody seems to know all of them (before the talk of application risk assessment)? Then this project may be a right fit for you.
  
A pure Ruby library for the web application asset discovery and tracking.
+
This project is designed to perform the web application asset discovery and auto tracking with scale.
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
This section must include a shorter description of what the project is, why the project was started, and what security issue is being helped by the project deliverable. This description will be used to promote the project so make sure the description represents your project in the best way possible.  
 
</span>
 
  
'''Although this is a sample template, the project is real! [http://owasp.github.io/Security-Principles Please contribute to this project.]
+
==Description==
'''
 
 
 
Over the course of my career, I have come across and collected a number of security ''aphorisms.'' These aphorisms constitute the fundamental principles of information security.
 
  
None of the ideas or truths are mine, and unfortunately, I did not collect the citations. Initially, I would like to identify the correct citations for each aphorism.
+
A pure Ruby library for the web application asset discovery and tracking. The tool is useful when you're handling a larger size organization with multiple Internet domains and networks registered under the name. Where both legacy and new web applications are omni-present but nobody seems to be able to provide a complete list of application URLs to you. Yes you can always do it the old way by using tool sets such as NMAP, OWASP Zap web crawler, along with others. But such tool sets could quickly become too much manual-driven and inaccurate, if not impossible. In the contrary, once setup, this project will help you quickly identify all the 'unknown' web application asset, and keep track of them automatically. If you are serious about your organization's Internet web application exposure, this might be the perfect all-in-one footprinting tool you're looking for.  
  
Additionally, many are re-statements of the same idea; thus, the 'collection of ideas' defines a fundamental principle. As such, I would also like to reverse engineer the principles from the aphorisms where appropriate, as well.
+
Built as an open source project, the source code is both free and scalable. You're welcome to keep building on top of the current code base, or include it as part of your larger project distribution.
  
 
==Licensing==
 
==Licensing==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
A project must be licensed under a community friendly or open source license.  For more information on OWASP recommended licenses, please see [https://www.owasp.org/index.php/OWASP_Licenses OWASP Licenses]. While OWASP does not promote any particular license over another, the vast majority of projects have chosen a Creative Commons license variant for documentation projects, or a GNU General Public License variant for tools and code projects.
 
</span>
 
  
'''The OWASP Security Principles are free to use. In fact it is encouraged!!!
+
'''The OWASP Web Mapper Project is free to use. In fact it is encouraged!
'' Additionally, I also encourage you to contribute back to the project. I have no monopoly on this knowledge; however, we all have pieces of this knowledge from our experience. Let's begin by putting our individual pieces together to make something great. Great things happen when people work together.
 
  
The OWASP Security Principles are licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
+
The OWASP Security Principles are licensed under the [https://github.com/yangsec888/wmap/blob/master/LICENSE.txt Apache 2.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
  
 
<!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->
 
<!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->
 
| valign="top"  style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
 
| valign="top"  style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
  
== What is OWASP Security Principles Project? ==
+
== What is OWASP Web Mapper Project? ==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
The goal is to help you better identify, and keep track of the web application asset under your watch.
<span style="color:#ff0000">
+
Ideally we could document various reverse-engineering techniques using by this project and publish it through the OWASP Press. Of course, it will always remain freely available, and any money collected will go directly into the project and to the OWASP Foundation.
Here you should add a short description of what your project actually does. What is the primary goal of your project, and why is it important?
 
</span>
 
  
The end goal is to identify, cite, and document the fundamental principles of information security. Once this is well organised, I think it would be great to publish this through the [http://scriptogr.am/dennis-groves/post/owasp-press OWASP Press]. Of course, it will always remain freely available, and any money collected will go directly into the project to absorb costs with any remaining funds going to the OWASP Foundation.
+
== Demo ==
  
This document should serve as a guide to technical architects and designers outlining the fundamental principles of security.
+
*[http://wmap.io/ Demo] A demo web app exploring WMAP library power.
  
== Presentation ==
 
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
== Project Code and Documents ==
<span style="color:#ff0000">
 
This is where you can link to slide presentations related to your project.
 
</span>
 
  
 +
* [https://github.com/yangsec888/wmap Latest WMAP source tree.]
 +
* [https://github.com/yangsec888/www_wmap WMAP web app demo built in Ruby on Rails 5+]
  
AppSec USA 2013 [https://github.com/OWASP/Security-Principles/tree/master/Presentations/AppSec%20NYC%202013]
+
<!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->
 
+
| valign="top"  style="padding-left:25px;width:200px;" |
== Project Leader ==
 
 
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
A project leader is the individual who decides to lead the project throughout its lifecycle. The project leader is responsible for communicating the project’s progress to the OWASP Foundation, and he/she is ultimately responsible for the project’s deliverables. The project leader must provide OWASP with his/her real name and contact e-mail address for his/her project application to be accepted, as OWASP prides itself on the openness of its products, operations, and members.
 
</span>
 
 
 
* [https://www.owasp.org/index.php/User:Dennis_Groves Dennis Groves]
 
 
 
  
 
== Related Projects ==
 
== Related Projects ==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
This is where you can link to other OWASP Projects that are similar to yours.
 
</span>
 
  
* [[OWASP_CISO_Survey]]
+
* [[OWASP_Zed_Attack_Proxy_Project]]
  
== Openhub ==
+
== News and Events ==
 
 
* [https://www.openhub.net/orgs/OWASP OWASP Project Openhub]
 
 
 
<!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->
 
| valign="top"  style="padding-left:25px;width:200px;" |
 
 
 
== Quick Download ==
 
  
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
<span style="color:#ff0000">
 
This is where you can link to your repository.
 
</span>
 
  
The home of the OWASP Security Principles is on [https://github.com/OWASP/Security-Principles GitHub.] You are encourged to fork, edit and push your changes back to the project through git or edit the project directly on github.
 
  
However, if you like you may also download the master repository from the following links:
+
* [January 1 2018] OWASP Web Mapper demo web application released.
* [https://github.com/OWASP/Security-Principles/zipball/master .zip file.]
+
* [August 1 2015] OWASP Web Mapper Project created.
* [https://github.com/OWASP/Security-Principles/tarball/master .tgz file.]
 
  
Project Code and Documents:https://github.com/yangsec888/wmap
 
  
== News and Events ==
+
== Project Leader ==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
* [https://www.owasp.org/index.php/User:Yang_Li Sam (Yang) Li]
<span style="color:#ff0000">
 
This is where you can link to press your project has been a part of. Appropriate press includes: Project Leader interviews, articles written about your project, and videos about your project.  
 
</span>
 
  
* [20 Nov 2013] News 2
 
* [30 Sep 2013] News 1
 
  
 
== In Print ==
 
== In Print ==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
I'm working on project document. But it's far from become a book at this moment. Instead, please refer to the project hosting site for more project document.
<span style="color:#ff0000">
 
This is where you place links to where your project product can be downloaded or purchased, in the case of a book.  
 
</span>
 
 
 
This project can be purchased as a print on demand book from Lulu.com
 
  
 
==Classifications==
 
==Classifications==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<span style="color:#ff0000">
 
Here is where you can let the community know what project stage your project is currently in, whether the project is a builder, breaker, or defender project, and what type of project you are running.
 
</span>
 
  
 
   {| width="200" cellpadding="2"
 
   {| width="200" cellpadding="2"
Line 161: Line 93:
 
=FAQs=
 
=FAQs=
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
==Installation==
<span style="color:#ff0000">
+
# The easiest way to install WebMapper is by using Ruby Gems. Download the latest gem 'wmap-x.x.x.gem' into the local file system. Then install it from your shell environment:
Many projects have "Frequently Asked Questions" documents or pages. However, the point of such a document is not the questions. ''The point of a document like this are the '''answers'''''. The document contains the answers that people would otherwise find themselves giving over and over again. The idea is that rather than laboriously compose and post the same answers repeatedly, people can refer to this page with pre-prepared answers. Use this space to communicate your projects 'Frequent Answers.'
+
$ gem install wmap-x.x.x.gem --no-rdoc
</span>
+
 
 +
== Dependency==
 +
You need the Ruby 1.9.2 or above in order to use this program. In addition, I developed and tested the code in a Ubantu Linux VM with Ruby 1.9.3.
 +
* You need to setup Ruby 1.9.x environment. In my test environment, I was able to set it up with RVM. Please refer to this page for more installation information: http://www.ruby-lang.org/en/downloads/
 +
 
 +
* In addition, the following Ruby GEM dependency are needed by different components of this software:
 +
:# require "uri"
 +
:# require "open-uri"
 +
:# require "open_uri_redirections"
 +
:#require "nokogiri"
 +
:#require "net/http"
 +
:#require "httpclient"
 +
:#require "net/ping"
 +
:#require "netaddr"
 +
:#require "socket"
 +
:#require "openssl"
 +
:#require "whois"
 +
:#require "resolv"
 +
:#require "geoip"
 +
:#require "parallel"
 +
:#require "dnsruby"
 +
 
 +
* Install dependency gem "uri" example
 +
  $ gem install uri
 +
 
 +
* Ruby-whois gem patches
 +
This software also depends on a patched version of Ruby gem ruby-whois-2.7.0 (http://www.ruby-whois.org/) for the domain whois lookup feature. For better result, you could manually add the patches into your local whois gem installation directory as shown below:
 +
  $ cp whois_patches/* [Your_ruby_whois_gem_path]/whois/lib/whois/record/parser/
 +
Or you can directly download the branched whois gem from this repository - https://github.com/yangsec888/whois
 +
 
 +
== Before Using This Program ==
 +
You need to define a scope for the program to run successful. The scope includes both your legitimate Internet domain, and your public
 +
network block in the CIDR format.
 +
 
 +
To add your Internet domain into the scope, use the build-in shell command below:
 +
  $ trust XYZ.COM
 +
 
 +
To add your public network block into the scope:
 +
  $ trust x.x.x.x/x
 +
 
 +
== Automatic Discovery and Tracking ==
 +
  $ wmap <seed file | target host | target url | target IP or network cidr>
 +
 
 +
The above utility is intelligent enough to take argument as either a seed file, or a string such as a host, an IP, a network block, or a URL. The new discoveries will be automatically tracked in the data file 'lib/wmap/data/target_sites'.
 +
  Note: seed file - mix of url, cidr and domain seed, one entry per line.
 +
url seed - known URL(s) for further discovery via the web crawler.
 +
cidr seed - list of known network blocks, for discovering web service via port scanning; it is also used to validate if the web service has a known IP (internal hosted).
 +
domain seed - validated internet domain to be used for DNS record brute-forcing; it is also used to validate the ownership of found web service.
 +
 
 +
== Dump Out Discovery Database ==
 +
You can dump out the program output by using the build-in utility 'wdump' as shown below:
 +
  $ wdump [output file name from you]
 +
 
 +
The above utility will dump out the discovery database into a single file as program output. Currently, the supported file format is Comma-separated Value (.csv) and Extensible Markup Language (.xml)
 +
 
 +
== Other Build-in Utilities ==
 +
You may need to update your sset repository from time to time. For this purpose, ‘wmap’ provide three utilities ‘wcheck’, ‘wadd’ and ‘wdel’ to perform the tasks for you. For example, you can check out the status of a site, as shown below:
 +
  $ wcheck https://www.owasp.org/
 +
  <nowiki>{"ip"=>"104.130.192.89", "port"=>443, "url"=>"https://www.owasp.org/", "code"=>301, "redirection"=>"https://www.owasp.org/index.php/Main_Page", "md5"=>"d41d8cd98f00b204e9800998ecf8427e", "server"=>"Apache", "timestamp"=>2015-09-02 13:32:31 -0400, "status"=>"ext_hosted"}</nowiki>
 +
 
 +
You may want to use 'wadd' utility to add it, as shown below:
 +
  $ wadd https://www.owasp.org/
 +
 
 +
You may want to use 'wdel' utility to delete it, as shown below:
 +
  $ wdel https://www.owasp.org/
 +
 
 +
== More Usage Examples ==
 +
There are also some code examples under the 'demos' folder of this package. The examples show how to use the 'wmap' API to get your  job done easily. Please check out the code - they should be easy and straightforward to be understood.
 +
 
 +
== More document(s) ==
 +
The software comes with the Ruby doc during your installation as shown above. For your convenience, the Ruby doc is also distributed with the software. You can navigate to the 'doc' folder of your local installation, and click the 'index.html' to open the start page in your favorite browser. You can also download the wmap-x.x.x.rdoc.zip documentation package alone from the hosting site, unzip and open the doc/index.html in your browser.
 +
 
 +
If you need additional documentation / information other than this README file and the Ruby document package, please be patient - as I'm still working on it.
  
 +
==How do I report the bugs, or maybe require some new features?==
 +
Contact the developer Yang Li directly at his email '[email protected]'.
  
 
==How can I participate in your project?==
 
==How can I participate in your project?==
Line 171: Line 177:
  
 
==If I am not a programmer can I participate in your project?==
 
==If I am not a programmer can I participate in your project?==
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for researchers, writers, graphic designers, and a project administrator.  
+
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for QA tester, front-end builder, document writers, graphic designers, and a project administrator.
  
 
= Acknowledgements =
 
= Acknowledgements =
Line 177: Line 183:
 
==Contributors==
 
==Contributors==
  
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
+
The OWASP Web Mapper Project is originally developed by Yang Li. A live update of project  [https://github.com/yangsec888/wmap/blob/master/CREDIT.txt contributors can be found here].  
<span style="color:#ff0000">
 
The success of OWASP is due to a community of enthusiasts and contributors that work to make our projects great. This is also true for the success of your project.
 
Be sure to give credit where credit is due, no matter how small! This should be a brief list of the most amazing people involved in your project.
 
Be sure to provide a link to a complete list of all the amazing people in your project's community as well.
 
</span>
 
 
 
The OWASP Security Principles project is developed by a worldwide team of volunteers. A live update of project  [https://github.com/OWASP/Security-Principles/graphs/contributors contributors is found here].  
 
  
The first contributors to the project were:
+
The first contributors to the project are:
  
* [https://www.owasp.org/index.php/User:Dennis_Groves Dennis Groves]
+
* [https://www.owasp.org/index.php/User:Yang_Li Yang Li]
* [https://github.com/sublimino Andrew Martin]
+
* [Your name here]
* [https://github.com/Lambdanaut Josh Thomas]
 
* '''YOUR NAME BELONGS HERE'''
 
  
= Road Map and Getting Involved =
+
= Road Map =  
  
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
 
<!-- Instructions are in RED and should be removed from your document by deleting the text with the span tags.-->
<span style="color:#ff0000">
+
<span>
A project roadmap is the envisioned plan for the project. The purpose of the roadmap is to help others understand where the project is going. It gives the community a chance to understand the context and the vision for the goal of the project. Additionally, if a project becomes inactive, or if the project is abandoned, a roadmap can help ensure a project can be adopted and continued under new leadership.
+
Please refer to TODO file at code repository for additional information:
 +
*https://github.com/yangsec888/wmap/blob/master/TODO
 
</span> 
 
</span> 
  
<span style="color:#ff0000">
+
= Getting Involved =
Roadmaps vary in detail from a broad outline to a fully detailed project charter. Generally speaking, projects with detailed roadmaps have tended to develop into successful projects. Some details that leaders may consider placing in the roadmap include: envisioned milestones, planned feature enhancements, essential conditions, project assumptions, development timelines, etc. You are required to have at least 4 milestones for every year the project is active.
 
</span>
 
  
As of October 2013, the priorities are:
+
Involvement in the development and promotion of the OWASP Web Mapper Project is encouraged!
* Finish the referencing for each principle.
+
You do not have to be a developer in order to contribute.
* Update the Project Template.
+
Some of the ways you can get involved and contribute:
* Use the OWASP Press to develop a book.
+
* Join the project [https://lists.owasp.org/mailman/listinfo/owasp-web-mapper-project Mailing List].
* Finish and publish the book on Lulu.
+
* Help QA test the project.
 
+
* Help build a user-friendly front-end.
Involvement in the development and promotion of the OWASP Security Principles Project is actively encouraged!
 
You do not have to be a security expert in order to contribute.
 
Some of the ways you can help:
 
* Helping find references to some of the principles.
 
 
* Project administration support.  
 
* Project administration support.  
 
* Wiki editing support.
 
* Wiki editing support.
 
* Writing support for the book.  
 
* Writing support for the book.  
  
 
+
If you can help, please sign up a [https://github.com/ GITHUB] account, then [mailto:[email protected] notify me]. 
  
  

Latest revision as of 14:28, 15 September 2019

OWASP Project Header.jpg


OWASP Web Mapper Project

What if there are quite a few web applications under your organization, but nobody seems to know all of them (before the talk of application risk assessment)? Then this project may be a right fit for you.

This project is designed to perform the web application asset discovery and auto tracking with scale.

Description

A pure Ruby library for the web application asset discovery and tracking. The tool is useful when you're handling a larger size organization with multiple Internet domains and networks registered under the name. Where both legacy and new web applications are omni-present but nobody seems to be able to provide a complete list of application URLs to you. Yes you can always do it the old way by using tool sets such as NMAP, OWASP Zap web crawler, along with others. But such tool sets could quickly become too much manual-driven and inaccurate, if not impossible. In the contrary, once setup, this project will help you quickly identify all the 'unknown' web application asset, and keep track of them automatically. If you are serious about your organization's Internet web application exposure, this might be the perfect all-in-one footprinting tool you're looking for.

Built as an open source project, the source code is both free and scalable. You're welcome to keep building on top of the current code base, or include it as part of your larger project distribution.

Licensing

The OWASP Web Mapper Project is free to use. In fact it is encouraged!

The OWASP Security Principles are licensed under the Apache 2.0 license, so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.

What is OWASP Web Mapper Project?

The goal is to help you better identify, and keep track of the web application asset under your watch. Ideally we could document various reverse-engineering techniques using by this project and publish it through the OWASP Press. Of course, it will always remain freely available, and any money collected will go directly into the project and to the OWASP Foundation.

Demo

  • Demo A demo web app exploring WMAP library power.


Project Code and Documents

Related Projects

News and Events

  • [January 1 2018] OWASP Web Mapper demo web application released.
  • [August 1 2015] OWASP Web Mapper Project created.


Project Leader


In Print

I'm working on project document. But it's far from become a book at this moment. Instead, please refer to the project hosting site for more project document.

Classifications

New projects.png Owasp-builders-small.png
Owasp-defenders-small.png
Cc-button-y-sa-small.png
Project Type Files DOC.jpg

Installation

  1. The easiest way to install WebMapper is by using Ruby Gems. Download the latest gem 'wmap-x.x.x.gem' into the local file system. Then install it from your shell environment:
$ gem install wmap-x.x.x.gem --no-rdoc

Dependency

You need the Ruby 1.9.2 or above in order to use this program. In addition, I developed and tested the code in a Ubantu Linux VM with Ruby 1.9.3.

  • You need to setup Ruby 1.9.x environment. In my test environment, I was able to set it up with RVM. Please refer to this page for more installation information: http://www.ruby-lang.org/en/downloads/
  • In addition, the following Ruby GEM dependency are needed by different components of this software:
  1. require "uri"
  2. require "open-uri"
  3. require "open_uri_redirections"
  4. require "nokogiri"
  5. require "net/http"
  6. require "httpclient"
  7. require "net/ping"
  8. require "netaddr"
  9. require "socket"
  10. require "openssl"
  11. require "whois"
  12. require "resolv"
  13. require "geoip"
  14. require "parallel"
  15. require "dnsruby"
  • Install dependency gem "uri" example
 $ gem install uri
  • Ruby-whois gem patches

This software also depends on a patched version of Ruby gem ruby-whois-2.7.0 (http://www.ruby-whois.org/) for the domain whois lookup feature. For better result, you could manually add the patches into your local whois gem installation directory as shown below:

 $ cp whois_patches/* [Your_ruby_whois_gem_path]/whois/lib/whois/record/parser/

Or you can directly download the branched whois gem from this repository - https://github.com/yangsec888/whois

Before Using This Program

You need to define a scope for the program to run successful. The scope includes both your legitimate Internet domain, and your public network block in the CIDR format.

To add your Internet domain into the scope, use the build-in shell command below:

 $ trust XYZ.COM

To add your public network block into the scope:

 $ trust x.x.x.x/x

Automatic Discovery and Tracking

 $ wmap <seed file | target host | target url | target IP or network cidr>

The above utility is intelligent enough to take argument as either a seed file, or a string such as a host, an IP, a network block, or a URL. The new discoveries will be automatically tracked in the data file 'lib/wmap/data/target_sites'.

 Note: seed file - mix of url, cidr and domain seed, one entry per line.

url seed - known URL(s) for further discovery via the web crawler. cidr seed - list of known network blocks, for discovering web service via port scanning; it is also used to validate if the web service has a known IP (internal hosted). domain seed - validated internet domain to be used for DNS record brute-forcing; it is also used to validate the ownership of found web service.

Dump Out Discovery Database

You can dump out the program output by using the build-in utility 'wdump' as shown below:

 $ wdump [output file name from you]

The above utility will dump out the discovery database into a single file as program output. Currently, the supported file format is Comma-separated Value (.csv) and Extensible Markup Language (.xml)

Other Build-in Utilities

You may need to update your sset repository from time to time. For this purpose, ‘wmap’ provide three utilities ‘wcheck’, ‘wadd’ and ‘wdel’ to perform the tasks for you. For example, you can check out the status of a site, as shown below:

 $ wcheck https://www.owasp.org/
 {"ip"=>"104.130.192.89", "port"=>443, "url"=>"https://www.owasp.org/", "code"=>301, "redirection"=>"https://www.owasp.org/index.php/Main_Page", "md5"=>"d41d8cd98f00b204e9800998ecf8427e", "server"=>"Apache", "timestamp"=>2015-09-02 13:32:31 -0400, "status"=>"ext_hosted"}

You may want to use 'wadd' utility to add it, as shown below:

 $ wadd https://www.owasp.org/

You may want to use 'wdel' utility to delete it, as shown below:

 $ wdel https://www.owasp.org/

More Usage Examples

There are also some code examples under the 'demos' folder of this package. The examples show how to use the 'wmap' API to get your job done easily. Please check out the code - they should be easy and straightforward to be understood.

More document(s)

The software comes with the Ruby doc during your installation as shown above. For your convenience, the Ruby doc is also distributed with the software. You can navigate to the 'doc' folder of your local installation, and click the 'index.html' to open the start page in your favorite browser. You can also download the wmap-x.x.x.rdoc.zip documentation package alone from the hosting site, unzip and open the doc/index.html in your browser.

If you need additional documentation / information other than this README file and the Ruby document package, please be patient - as I'm still working on it.

How do I report the bugs, or maybe require some new features?

Contact the developer Yang Li directly at his email '[email protected]'.

How can I participate in your project?

All you have to do is make the Project Leader's aware of your available time to contribute to the project. It is also important to let the Leader's know how you would like to contribute and pitch in to help the project meet it's goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key.

If I am not a programmer can I participate in your project?

Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for QA tester, front-end builder, document writers, graphic designers, and a project administrator.

Contributors

The OWASP Web Mapper Project is originally developed by Yang Li. A live update of project contributors can be found here.

The first contributors to the project are:

Please refer to TODO file at code repository for additional information:

 

Involvement in the development and promotion of the OWASP Web Mapper Project is encouraged! You do not have to be a developer in order to contribute. Some of the ways you can get involved and contribute:

  • Join the project Mailing List.
  • Help QA test the project.
  • Help build a user-friendly front-end.
  • Project administration support.
  • Wiki editing support.
  • Writing support for the book.

If you can help, please sign up a GITHUB account, then notify me.