icence: gpl-3.0
inikiwi-netexplorer [-r <requests>] [-j <threads>] [-t <timeout>] [--hide-fail] [--hide-access-denied] [--hide-skipped] [--raw-output <file>] [--protocol-map <file>] <task>
explore [<protocol>://]{<ip>, hostname}[:<port>]scan ports of a given ip or hostname. for each ports prints the requests status:FAILorOK. explore task is multithreaded.explore-file-raw <files>import raw task list from file and runexploretask. example:explore-file-raw "raw1.txt;raw2.txt"script <file>run the lua script
port(optional, default is*) can be- a number between 0 and 65535.
- a range like
*->1-65535 randto generate random port.
ipuse[0-255].[0-255].[0-255].[0-255]format orrandto generate random ips. examples:192.168.0.*for local ips.rand->rand.rand.rand.randfor full random ips.192.168.0-10.*ranges.*.*.*.*->0-255.0-255.0-255.0-255ranges.
hostnamejust a normal hostname likewww.google.frorinikiwi.netprotocolthe protocol for scan.tcpcheck the tcp connection.httpopen a tcp connection and do a http request without ssl/tls.httpsopen a tcp connection and do a https with ssl/tls.ftpopen a tcp connection and try login asanonymousand list files in root directory.autouse protocol map to assign ports to protocol.skipskip request.
-r <requests>maximum number of requests to do in a task. default is0(infinite).-j <threads>number of threads used for explore tasks. a thread can do one request at a time.-t <timeout>set timeout for requests. if the timeout is reached the requests is set toFAIL.--hide-failhides failed requests.--hide-access-deniedhides requests where ressource access is denied.--hide-skippedhides skipped requests (with protocolskip).--raw-outputwrite results withOKstatus in a text file as a raw task list, compatible withexploretask.--protocol-mapset the protocol map file. default isprotocolmap.txt(in your current shell directory).
sudo apt-get install build-essential cmake libssl-dev
mkdir build && cd build
cmake ..
make
./inikiwi-netexplorerlocal mylogger = Logger.new(use_stdout, logfile)| function | arguments | action |
|---|---|---|
set_hide_fail(v) |
v:bool bollean value. |
hide requests whit FAIL status. |
set_hide_skipped(v) |
v:bool bollean value. |
hide requests whit SKIPPED status. |
set_hide_access_denied(v) |
v:bool bollean value. |
hide requests whit ACCESS DENIED status. |
log(msg) |
msg:string string to display and log |
print message to stdout (if activated) and save it in the log file (if selected) |
local myprotocolmap = ProtocolMap.new()
myprotocolmap:import("./protocolmap.txt")| function | arguments | action |
|---|---|---|
import(file) |
file:string file path. |
import protocolmap from file |
clear() |
clear the protocol map | |
set_hide_access_denied(v) |
v bollean value. |
hide requests whit ACCESS DENIED status. |
set(port, protocols) |
port:int the port. protocols:string space separated protocols |
attribute protocols to a given port. |
get(port) |
port:int the port. |
return protocol list (string) for the given port. |
local mynetworktask = NetworkTask.new(mylogger, myprotocolmap)| function | arguments | action |
|---|---|---|
decode(data) |
data:string or data:list:string |
imports tasks like explore task |
decode_file(file) |
file:string file path. |
import tasks like explore-file-raw task |
set_max_requests(num) |
num:int number of maximum requests to do |
like -r option |
set_raw_output(file) |
file:string file path. |
save address of tasks result in a file that can be imported with explore-file-raw and decode_file(file) |
set_threads(t) |
t:int number of threads to use |
like the -j option |
set_timeout(t) |
t:int timeout (us) for socket connections |
like the -t option |
get_timeout() |
return the timeout (us) | |
run() |
execute the task with all given settings | |
register_onresult_tcp(function(addr)) |
addr:Ipv4Addr the result address. |
set the callback when a reslut is found with the tcp protocol |
register_onresult_http(function(addr, result)) |
addr:Ipv4Addr the result address. result:HttpRequestResult the http request result object. |
set the callback when a reslut is found with the http protocol |
register_onresult_https(function(addr, result)) |
addr:Ipv4Addr the result address. result:HttpRequestResult the http request result object. |
set the callback when a reslut is found with the https protocol |
mynetworktask:register_onresult_https(function(result_address, myhttprequestresult)
mylogger:log(myhttprequestresult:get_content())
end)| function | arguments | action |
|---|---|---|
get_status() |
return the HTTP status code. | |
get_header(name) |
name:string the http header name. |
return the HTTP header value as a string. |
get_full_header() |
return the full http header as a string. | |
get_version() |
return the HTTP version tag as a string. | |
get_content_size() |
return the size of the received content as a int. | |
get_content() |
return the the received content as a string. (the content can be a binary file!) |