《白帽子讲web扫描》读书笔记(1) — 环境搭建

Mi0发布

前言

如果一口气写,感觉太混乱了,所以分章节整理下,虽然知识点几乎没有,但是还是折腾了半天

靶机环境准备

学习没学多久,搭环境倒是搭了半天,最后还是屈服使用别人做好的docker

docker pull owaspvwad/wavsep

启动容器

docker run -p 8080:8080 -d --name=wavsep owaspvwad/wavsep

此时访问 127.0.0.1:8080/wavsep/即可

意外理解

这个容器真的是让人难顶,wavsep的容器本来就少,它是star最多的,也是搭的服务器最好的,但是但是但是就是不知道mysql的密码,卸载重装启动不了,正常无法stop,最后的解决办法如下

$service mysql stop 
 * Stopping MySQL database server mysqld                         [fail]

$cat /var/run/mysqld/mysqld.pid
429

$kill 429

$service mysql stop 
 * Stopping MySQL database server mysqld                         [OK]

接下来重置密码

$mysqld_safe --skip-grant-tables --skip-networking &
$mysql

mysql >use mysql;
mysql >UPDATE user SET password=PASSWORD("root") WHERE user='root';
mysql >FLUSH PRIVILEGES;

完美,接下来退出容器再web中连接数据库即可

事后翻了下数据库,发现wavsep这个平台连接数据库后install.jsp界面刷新又要重新连接,而它docker平台是之前连接过的,有数据存在。因此不知道密码也行

写工具环境准备

Python环境

idea能使写代码更方便(还能配置venv

书中一来就介绍了巴拉巴拉一堆工具依赖,又是本机环境配置,又是pip安装依赖

依赖安装

这里我使用的是直接用idea来安装,缺啥安装啥,之后写代码的时候会配置

PyQt的安装

PyQt是C++开发的开发框架,有很多函数,我们要用的是其中的QtWebKit模块,这个模块相当于有个WebKit浏览器一样,爬虫的时候需要的

安装方法,我使用的apt,把网上罗列的包写了个sh

#setup.sh
apt-get install libxext6 libxext-dev libqt4-dev libqt4-gui libqt4-sql 
apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer 
apt-get install python-qt4 sudo apt-get install python-qt4-* 
apt-get install python-qscintilla2 
apt-get install python3-pyqt4 
apt-get install python3-pyqt4.qsci 
apt-get install python3-pyqt4.qtsql 
apt-get install python3-pyqt4.phonon

运行即可

sh setup.sh

如果报错

apt --fix-broken install

之后再运行,一路按回车即可

sh setup.sh

(附)环境搭建

在开始写扫描器前,需要搭建被扫的web环境,书上写的是直接在linux下搭建,而我去docker上找发现有现有的镜像,但是不知道环境的数据库的密码,捣鼓了半天也无果。所以最后还是自己起个ubuntu的基础镜像从头开始搭

需要准备以下的内容

  • java环境
  • Tomcat
  • mysql
  • Wavsep的web页面代码

搭建步骤

基础环境

先拉取个镜像 ,我kali的docker有点小毛病,直接拉取ubuntu官方镜像和debain的基础镜像都启动不了,因此选了个别人稍有配置的镜像

docker pull ubuntu-upstart
docker run -d ubuntu-upstart

java环境

java环境从web上下载,因为要登录,所以通过浏览器来下载,然后导入docker

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

导入的时候要容器中的路径存在才能导入成功

在容器内
cd /usr/local
mkdir java

在容器外,宿主机中
docker cp ./jdk/jdk-8u221-linux-x64.tar.gz <容器名>:/usr/local/java/

解压

cd /usr/local/java/
tar -zxvf jdk-8u221-linux-x64.tar.gz 

配置环境变量,一行echo,直接追加到/etc/profile后面。

echo -e "export JAVA_HOME=/usr/local/java/jdk1.8.0_221\nexport CLASSPATH=\${JAVA_HOME}/lib\nexport PATH=\${JAVA_HOME}/bin:\$PATH" >> /etc/profile

source /etc/profile

检查,有回显差不多就ok了

java -version

Tomcat

因为使用外国的apt源很慢,这个docker里面也是装的ubuntu官方的源,所以这里首先修改apt

准备的是阿里的镜像,宿主机创建个sources.list文件

deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main

deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main

deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe

deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe

在本机执行以下命令,copy到容器中

docker cp ./sources.list <容器名>:/etc/apt/

在容器中更新下apt

apt-get update

Tomcat使用apt-get来安装

apt-get install tomcat8

Mysql

在安装时会设置密码

apt install mysql-client

apt install mysql-server

Wavsep环境

cd /var/lib/tomcat8/webapps/

git clone https://github.com/sectooladdict/wavsep.git
分类: web安全

0 条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注