2014-09-07 17:28:10 +02:00
|
|
|
ponymap
|
|
|
|
=======
|
|
|
|
|
2014-09-21 00:59:31 +02:00
|
|
|
`ponymap' is an experimental network scanner, of alpha quality so far.
|
2014-09-07 17:28:10 +02:00
|
|
|
|
2014-09-15 00:56:06 +02:00
|
|
|
Replacing nmap is not the goal, even though it would be rather very nice to
|
2014-09-21 00:59:31 +02:00
|
|
|
have a serious network scanner with a permissive license.
|
2014-09-15 00:56:06 +02:00
|
|
|
|
2014-09-07 17:28:10 +02:00
|
|
|
The ultimate purpose of this scanner is bruteforcing hosts and ports in search
|
2014-09-21 00:59:31 +02:00
|
|
|
of running services of a kind. It should be simple and straight-forward to
|
|
|
|
either write your own service detection plugins, provided that you're familiar
|
|
|
|
with writing asynchronous code, or to make changes to the existing ones.
|
2014-09-07 17:28:10 +02:00
|
|
|
|
2014-09-24 00:10:56 +02:00
|
|
|
So far there are some problems with reliability, and some clever algorithm to
|
|
|
|
avoid overloading the network is needed. Until then, you can use ulimit to cap
|
|
|
|
the maximum number of concurrent connections.
|
|
|
|
|
2014-09-07 17:28:10 +02:00
|
|
|
Building and Running
|
|
|
|
--------------------
|
2015-02-26 22:58:00 +01:00
|
|
|
Build dependencies: CMake, pkg-config, help2man
|
|
|
|
Runtime dependenices: curses, openssl, Jansson, lua = 5.3 (optional)
|
2014-09-07 17:28:10 +02:00
|
|
|
|
|
|
|
$ git clone https://github.com/pjanouch/ponymap.git
|
2014-09-21 00:58:19 +02:00
|
|
|
$ git submodule init
|
|
|
|
$ git submodule update
|
2015-01-17 15:54:49 +01:00
|
|
|
$ mkdir build
|
|
|
|
$ cd build
|
2015-02-08 05:44:02 +01:00
|
|
|
$ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug -DWITH_LUA=NO
|
2014-09-07 17:28:10 +02:00
|
|
|
$ make
|
|
|
|
|
2015-01-17 15:54:49 +01:00
|
|
|
To install the application, you can do either the usual:
|
2015-02-26 22:58:00 +01:00
|
|
|
# make install
|
2014-09-07 17:28:10 +02:00
|
|
|
|
2015-01-17 15:54:49 +01:00
|
|
|
Or you can try telling CMake to make a package for you. For Debian it is:
|
|
|
|
$ cpack -G DEB
|
|
|
|
# dpkg -i ponymap-*.deb
|
2014-09-07 17:28:10 +02:00
|
|
|
|
2015-01-17 15:54:49 +01:00
|
|
|
Note that for versions of CMake before 2.8.9, you need to prefix cpack with
|
|
|
|
`fakeroot' or file ownership will end up wrong.
|
|
|
|
|
|
|
|
Having the program installed, simply run it with no arguments to retrieve
|
|
|
|
a usage text. Have fun scanning.
|
2014-09-07 17:28:10 +02:00
|
|
|
|
2014-09-24 00:10:56 +02:00
|
|
|
Author's Notes
|
|
|
|
--------------
|
|
|
|
This was quite an interesting project to write and it has taught me a lot about
|
|
|
|
event loops. It would be relatively simple to plug in libuv if more robustness
|
|
|
|
and portability is needed, though.
|
|
|
|
|
2014-09-07 17:28:10 +02:00
|
|
|
License
|
|
|
|
-------
|
|
|
|
`ponymap' is written by Přemysl Janouch <p.janouch@gmail.com>.
|
|
|
|
|
|
|
|
You may use the software under the terms of the ISC license, the text of which
|
|
|
|
is included within the package, or, at your option, you may relicense the work
|
|
|
|
under the MIT or the Modified BSD License, as listed at the following site:
|
|
|
|
|
|
|
|
http://www.gnu.org/licenses/license-list.html
|