Arch安装BlackArch工具

添加blackarch源

# 下载脚本
curl -O https://blackarch.org/strap.sh
# 校验脚本完整性
echo 26849980b35a42e6e192c6d9ed8c46f0d6d06047 strap.sh  sha1sum -c

# 赋予执行权限,并执行
chmod +x strap.sh
sudo ./strap.sh

# 修改软件源
vim /etc/pacman.d/blackarch-mirrorlist


# 更新缓存
sudo pacman -Sy

sudo pacman -S backarch-keyring

常用包安装

端口扫描和信息收集

sudo pacman -S nmap dnsutils burpsuite

Namp

这是一个很常用的扫描工具,可以在渗透的过程中扫描到对方的IP、端口、操作系统等情况。

Nmap

Nmap常用命令

nslookup

这个命令是查看域名记录的,可以查看Cname、A等各种记录。它包含在dnsutils这个包里。

burpsuite

抓包神器,需要安装java依赖。

BurpSuite证书

BurpSuite_破解

暴力破解、字典生成

sudo pacman -S hydra crunch

hydra

暴力破解工具,中文名九头蛇,功能很强大。

Hydra

具体使用方法可以通过搜索引擎查询。

crunch

强大的密码字典生成器。

使用方法

Crunch中的特殊字符有:

'%' 插入数字

'@' 插入小写字母

',' 插入大写字母

'^' 插入符号

Crunch中用到的命令参数有:

-b #按大小分割字典文件,比如后跟20mib

-c #密码个数(行数),比如8000

-d #限制出现相同元素的个数(至少出现元素个数),-d 3就不会出现aabbbb之类的情况

-e #定义停止生成密码 ,比如-e abcd:到abcd停止生成密码

-f #调用密码库文件,比如-f charset.lst mixalpha-numeric 意为调用密码库 charset.lst中的 mixalpha-numeric项目字符

-i #改变输出格式

-l #与-t搭配使用

-m #与-p搭配使用

-o #保存为

-p #定义密码元素

-q #读取字典

-r #定义从某一个地方重新开始

-s #第一个密码,从xxx开始

-t #定义输出格式

-z #打包压缩,格式支持 gzip, bzip2, lzma, 7z

生成最小1位,最大8位,由26个小写字母为元素的所有组合:

crunch 1 8 >> 1.txt

生成 最小为1,最大为4.由abcd为元素的所有组合:

crunch 1 4 abcd >> 2.txt

生成以“yale”“test”为元素的所有密码组合:

crunch 4 5 -p yale test

漏洞利用

sudo pacman -S metasploit postgresql sqlmap

metasploit

安装postgresql,这是最重要的一个工具,没有它,内网的渗透也是无法完整进行的。

msf

配置postgresql

安装完后会多出来一个用户postgres,需要给它设置一个密码。

sudo passwd postgres

然后初始化数据库

sudo su - postgres -c "initdb --locale en_US.UTF-8 -E UTF8 -D '/var/lib/postgres/data'"

初始化完成后就可以启动数据库了

sudo systemctl enable postgresql --now

接下来,进入数据库用户postgres

sudo su postgres

连接数据库

psql

然后光标就变成了postgres=#

接下来创建一个数据库的新用户,如msfuser

postgres=# CREATE USER msfuser WITH PASSWORD 'p3net';

然后创建对应的数据库

postgres=# CREATE DATABASE msfdb OWNER msfuser;

将msfdb数据库的所有权限都赋予msf5

postgres=# GRANT ALL PRIVILEGES ON DATABASE msfdb TO msfuser;

退出psql

postgres=# \q

创建Linux普通用户,名称与刚才新建的数据库用户同名,如msfuser

sudo useradd msfuser
通过msf连接数据库

进入msf,链接数据库,命令为db_connect用户名:密码@ip/数据库名

msfconsole
msf5> db_connect 'msfuser:p3net@127.0.0.1/msfdb'

然后检查是否连接成功,如果出现类似以下内容说明成功了。

msf5 > db_status
[*] Connected to msf3. Connection type: postgresql. Connection name: local_db_service.

成功连接后,保存配置

msf5 > db_save

sqlmap

强大的web注入工具,使用方法可以通过搜索引擎查到。

sqlmap

DNS劫持

sudo pacman -S ettercap ettercap
sudo pacman -S ettercap-gtk

ettercap

强大的DNS劫持工具,各大搜索引擎也有不少教程。它分为命令行版本(ettercap)和图形化版本(ettercap-gtk),只能装其中一个,否则会冲突。

图形化版本可以在菜单中找到,如果没有执行以下命令

sudo ettercap -G

实用工具

sudo pacman -S wordlistctl webshells sploitctl torctl

修改限制

/etc/security/limits.conf 文件用于配置Linux系统中用户级别的资源限制。这些限制使用PAM(可插拔认证模块)机制来应用,主要是为了控制用户和进程可以使用的系统资源数量。该文件可以设置的资源限制包括:

配置文件中每一行的格式如下:

<domain> <type> <item> <value>
:指定用户或用户组,可以是特定用户名,@groupname 表示一个组,或者 * 表示所有用户。 :可以是 softhardsoft 是用户可以修改的限制,hard 是系统允许的最大限制,用户无法超越。 :要限制的资源类型,比如 nofilenproc 等。 :限制的具体数值。

例如,下面的配置:

给所有用户进行配置

* soft nofile 1024
* hard nofile 65535

给指定用户进行配置

eonun soft nofile 65535
eonun hard nofile 65535

这表示所有用户的软限制为1024个文件描述符,而硬限制为65535个文件描述符。

注意:更改此文件后,用户需要重新登录以使更改生效。