nicocha30 / ligolo-ng

An advanced, yet simple, tunneling/pivoting tool that uses a TUN interface.
GNU General Public License v3.0
2.61k stars 260 forks source link

Feature request: add interfaces and proxy routes directly from ligolo. #60

Closed LucasParsy closed 2 months ago

LucasParsy commented 6 months ago

Hi! Just discovered Ligolo, it's an excellent tool! the tool is so useful I only have one feature i'd like:

automatically create tunnels and routing from the tool.

feature description:

let's imagine I have an agent with this interface:

| Interface 6                          |
│ Name         │ tun0                  │
│ IPv4 Address │ 192.168.45.176/24     │

if i'd run the new command

tunnel_start_if 
    ? Specify an interface : 6

it would do under the hood:

sudo ip tuntap add user kali mode tun ligolo192_168_45_0
sudo ip link set ligolo192_168_45_0 up
sudo ip route add 192.168.45.0/24 dev ligolo192_168_45_0
tunnel_start --tun ligolo192_168_45_0

caveats

I don't know how complex it would be to create this feature and integrate it to the tool. It would require Sudo elevation of privilege from with ligolo to set interfaces (run elevated sub-process?)

I don't have knowledge in Go (yet!) and I'm pretty busy these next months, otherwise I would have tried for a pull request. And I think it's more polite to ask feedback for a new feature to the app's creator ;)

By the way, I'm curious, where does the name "ligolo" comes from?

LucasParsy commented 6 months ago

adding additional info as I am interested in developing this feature and would request your feedback before coding:

nicocha30 commented 6 months ago

Good idea. For Windows, the tun interface is automatically created, but not for Linux.

I will implement this functionality soon.

LucasParsy commented 6 months ago

Thanks a lot! (Great talk also 👍) Note that in the example I gave initially, the new tunnel name I gave is apparently not a valid name.

arty-hlr commented 3 months ago

This would be great to fully automate the proxying instead of having to type in manually 3 commands each time :)

nicocha30 commented 2 months ago

Implemented in Ligolo-ng v0.6!