Skip to content

Lab-ANT/6Forest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

6Forest

This is a demo for IPv6 address generation by learning the distribution of known active addresses. Its idea is introduced in the paper "6Forest: An Ensemble Learning-based Approach to Target Generation for Internet-wide IPv6 Scanning".

How to run ?

Environment

1. python 3.6 or higher version
2. numpy 1.21.2 or higher version
3. IPy 1.1 or higher version

Convert Seeds

Please convert your IPv6 seeds to numpy binary file. We recommend the works of Gasser et al for the seeds : IPv6 Hitlist.

For example:

2001:12f0:700:20::67
2001:12f0:700:f000::40
2001:12f0:700:f000::59

To

[
    [ 2  0  0  1  1  2 15  0  0  7  0  0  0  0  2  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  6  7]
    [ 2  0  0  1  1  2 15  0  0  7  0  0 15  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  4  0]
    [ 2  0  0  1  1  2 15  0  0  7  0  0 15  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  5  9]
]

Make sure the file name of seeds is seeds

Using:

    python convert.py

Run 6Graph

6Graph can automatically mine high-density IPv6 regions and display them.

Using:

    python main.py

Use those "high-quality" address regions for IPv6 scanning with your choose tools. We recommend using Zmap.

Related Work

Our another work is available at https://github.com/Lab-ANT/6Graph.

Future Work

In fact, the existing Internet-wide scanners, e.g. Zmap and Masscan, are not yet adapted for IPv6 scanning. To this end, we will implement an IPv6-oriented tool for pattern-based (rather than the prefix-based) target generation and scanning at https://github.com/hbn1987/6Scan.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages