# kali

1 . 换源

[LinuxMirrors](https://linuxmirrors.cn/use)

> GNU/Linux 更换系统软件源脚本及 Docker 安装脚本

bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)


2. Docker 安装脚本

bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/DockerInstallation.sh)
sudo usermod -aG docker $USER
newgrp docker


4. Node.js

curl -fsSL https://fnm.vercel.app/install | bash


5. Python

sudo apt update; sudo apt install build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl git \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
curl https://pyenv.run | bash


6. snap

sudo apt install -y snapd
sudo systemctl enable --now snapd apparmor
echo export PATH=$PATH:/snap/bin >> .zshrc


8. oh my zsh 、zplug

sh -c "$(curl -fsSL https://mirror.ghproxy.com/https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh


source ~/.zplug/init.zsh

# History config
HISTSIZE=10000
SAVEHIST=10000
HISTFILE=~/.zsh_history

# zplug plugins
zplug "romkatv/powerlevel10k", as:theme, depth:1
zplug 'zplug/zplug', hook-build:'zplug --self-manage'
zplug "zsh-users/zsh-completions"
zplug "zsh-users/zsh-history-substring-search"
zplug "zsh-users/zsh-autosuggestions"
zplug "zdharma/fast-syntax-highlighting"
zplug "zpm-zsh/ls"
zplug "plugins/docker", from:oh-my-zsh
zplug "plugins/composer", from:oh-my-zsh
zplug "plugins/extract", from:oh-my-zsh
zplug "lib/completion", from:oh-my-zsh
zplug "plugins/sudo", from:oh-my-zsh
zplug "b4b4r07/enhancd", use:init.sh

# Install packages that have not been installed yet
if ! zplug check --verbose; then
    printf "Install? [y/N]: "
    if read -q; then
        echo; zplug install
    else
        echo
    fi
fi
zplug load



9. font

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/JetBrains/JetBrainsMono/master/install_manual.sh)"


10 . shell 历史记录

bash <(curl https://raw.githubusercontent.com/ellie/atuin/main/install.sh)


11. docker 靶场

快速启动php web 服务

docker run -d -p 80:80 -v /home/kali/44227.php:/var/www/html/index.php php:apache


[sqli-labs](https://github.com/Audi-1/sqli-labs)

> SQLI 实验室测试基于错误、基于盲布尔值、基于时间。

[docker-dvwa](https://github.com/infoslack/docker-dvwa)

> DVWA(极易受攻击的Web应用程序)的Docker镜像

[upload-labs](https://github.com/c0ny1/upload-labs)

> 一个想帮你总结所有类型的上传漏洞的靶场

docker run --name dvwa -dt  -p 81:80 infoslack/dvwa
docker run --name sqli-lab  -dt  -p 82:80 acgpiano/sqli-labs:latest
docker run --name upload-labs -dt  -p 83:80 c0ny1/upload-labs


[pikachu](https://github.com/zhuifengshaonianhanlu/pikachu)

> 一个好玩的Web安全-漏洞测试平台

git clone https://gitclone.com/github.com/zhuifengshaonianhanlu/pikachu.git depth 1
docker build -t "pikachu" .
docker run -d --name pikchu -p 84:80 pikachu


[php_ser_Class](https://github.com/mcc0624/php_ser_Class)

> php反序列化靶场课程,基于课程制作的靶场

docker pull mcc0624/ser:1.8
docker run -d --name php_ser_Class -p 85:80 mcc0624/ser:1.8


[PHPSerialize-labs](https://github.com/ProbiusOfficial/PHPSerialize-labs)

> PHPSerialize-labs是一个使用php语言编写的,用于学习CTF中PHP反序列化的入门靶场。旨在帮助大家对PHP的序列化和反序列化有一个全面的了解。

git clone --depth 1 https://github.com/ProbiusOfficial/PHPSerialize-labs.git
cd PHPSerialize-labs
sudo docker compose up -d


[PHP-LAB](https://github.com/ShangRui-hash/php-lab)

> 基于docker搭建的一套环境,方便测试同一套PHP代码在不同PHP版本下运行的不一致性

git clone https://github.com/ShangRui-hash/php-lab.git --edpth 1
docker compose up --build --remove-orphans  


[DPanel](https://github.com/donknap/dpanel)

> docker可视化管理面板

docker run -it -d --name dpanel --restart=always \
 -p 90:8080 -e APP_NAME=dpanel \
 -v /var/run/docker.sock:/var/run/docker.sock -v dpanel:/dpanel \
 dpanel/dpanel:lite


[Watchtower](https://github.com/containrrr/watchtower)

> 用于自动更新Docker容器基础镜像的流程。

docker run --detach \
    --name watchtower \
    --volume /var/run/docker.sock:/var/run/docker.sock \
    containrrr/watchtower


#kali #docker #靶场 GitHub - Audi-1/sqli-labs: SQLI labs to test error based, Blind boolean based, Time based.
【【Vulnhub靶场】靶机导入到vmware后获取不到IP - CSDN App】https://blog.csdn.net/weixin_44830645/article/details/123523062?sharetype=blog&shareId=123523062&sharerefer=APP&sharesource=gandli&sharefrom=link


### Vulnhub靶场虚拟机获取不到IP的解决方法

在使用Vulnhub靶场时,很多时候会遇到靶机导入到 VMware 后无法自动获取到 IP 地址的问题。这个问题可能与靶机的网络配置文件有关。下面是两种常见的解决方法,适用于不同版本的 Ubuntu。

#### 方法一:适用于 Ubuntu 17.10 以下版本
这个方法适用于 Ubuntu 17.10 及以下版本,因为这些版本的网络配置文件通常使用 /etc/network/interfaces 文件,而不是新的 `/etc/netplan/`。

步骤:
1. 启动靶机,在 VMware 启动界面按下 `e` 键进入编辑模式。
2. 找到包含 linux 字符串的行,通常是以 ro 开头的那一行。
3. 将 ro 改为 `rw single init=/bin/bash`,这样做可以进入单用户模式。

修改后应该类似于:

   rw single init=/bin/bash
   


4. 按下 `Ctrl + X` 来启动靶机,进入单用户模式。

5. 在单用户模式下,使用 ip a 命令查看网卡名称,假设网卡名称为 `ens33`。

6. 编辑网络配置文件 `/etc/network/interfaces`:
   nano /etc/network/interfaces
   


7. 修改文件中的网卡配置,确保 `ens33` 配置为 DHCP,配置内容如下:
   auto ens33
   iface ens33 inet dhcp
   


8. 保存文件并退出编辑器,使用以下命令重启网络:
   sudo systemctl restart networking
   


9. 重新启动靶机,应该可以成功获取到 IP 地址。

#### 方法二:适用于 Ubuntu 18.04 及以上版本
对于 Ubuntu 18.04 及以上版本,网络配置使用了 netplan`,而不是 /etc/network/interfaces` 文件。

步骤:
1. 按照方法一的步骤进入单用户模式并查看网卡名称(例如 `ens33`)。

2. 在单用户模式下,进入 /etc/netplan/ 目录:
   cd /etc/netplan/
   


3. 查看当前配置文件,并编辑(例如,文件名为 `00-installer-config.yaml`):
   nano 00-installer-config.yaml
   


4. 修改配置文件,确保配置项中的网卡名称为 `ens33`,并启用 DHCP,修改后的配置内容如下:
   network:
     version: 2
     renderer: networkd
     ethernets:
       ens33:
         dhcp4: true
   


5. 保存文件并退出编辑器。

6. 应用网络配置:
   sudo netplan apply
   


7. 重启靶机,应该可以通过 DHCP 获取到 IP 地址。

#### 总结
- 方法一 适用于 Ubuntu 17.10 以下版本,修改 /etc/network/interfaces 文件来启用 DHCP。
- 方法二 适用于 Ubuntu 18.04 及以上版本,使用 netplan 配置文件进行网络配置。

#Vulnhub #靶场 #VMware #Ubuntu #获取IP #DHCP #网络配置 #Netplan #网络故障
 
 
Back to Top