解决WordPress无法上传媒体文件以及无法下载和安装主题与插件的问题

作者:荒原之梦

前言:

我的个人博客网站荒原之梦http://zhaokaifeng.com/在安装成功WordPress
之后本来是可以上传媒体文件,安装主题和插件的,但是后来不知道怎么回事就出了问题:不能上传媒体文件也不能安装主题和插件了。出现这个问题后我尝试了去解决,但是一时没能成功完成,后来博文里的图片都放到图床里了,这个问题也就一直被搁置到了今天(这样做是不对的,遇到问题要及时解决)。今天我决定解决这个问题,上网查资料,大概两个小时后弄好了,现在将解决过程记录下来。

操作环境:

1.网站服务器:Linux云服务器

2.网站程序:WordPress 4.7.5

一 我遇到的问题

使用WordPress上传媒体文件和安装主题及插件的时候均无法成功完成并出现如下错误提示:

1.上传媒体文件时显示“无法创建目录"wp-content/*/*”:

图 1

2.安装主题或者插件时弹出窗口要求输入FTP账号和密码,输入FTP账号相关信息后点击“安装”,之后又显示安装失败,提示的失败原因是“无法创建目录”:

图 2

二 解决步骤如下:

1.    首先用FTP工具连接服务器,在*/wordpress/wp-content目录下将upgrade、themes和plugins都右键设置成766权限,并选中“包含子目录”复选框。

然后我们使用FTP工具在*/wordpress目录中,找到wp-config.php,添加如下代码:

define("FS_METHOD","direct");

define("FS_CHMOD_DIR", 0777);

define("FS_CHMOD_FILE", 0777);

添加后保存,再安装插件已经不再提示输入FTP密码,但是仍然安装失败,并显示“安装失败:无法创建文件(如图2一样)”。此时也无法上传媒体文件。

2.    登陆到数据库

找到数据库中的wp_options,查看其对应的upload_path表的键值是不是wp-content/uploads(不要给键值加双引号),如果为空或者不是该值则改成该值。

之后在wordpress仪表盘中找到“设置->多媒体”,将文件上传路径改成wp-content/uploads(不要给路径加双引号),点击“保存更改”。

这时再尝试上传媒体文件已经可以上传了,但是仍然不能安装主题或插件,安装主题或插件时仍然显示“无法创建目录”

3.    使用ssh工具连接到服务器,进入wordpress的上一级路径,输入:

ls -l wordpress

发现wordpress的用户和组都是root.

也就是说不能下载安装主题和插件并不仅仅是因为权限不够(出现无法创建目录的问题人们最直接的反应就是权限不够,但是我尝试过,即使给upgrade、themes和plugins这些文件夹777的权限,仍然无法解决问题,而且还会因为权限过高产生隐患),而是因为执行下载安装主题和插件的用户组是web用户组(名称一般为www)。

所以我们输入:

chown -R www:www wordpress

将wordpress所属的用户和组全部改成www.

至此问题已全部解决,可以上传媒体文件,以及安装主题和插件了。

Sublime Text 3安装SFTP插件

作者:荒原之梦

前言:

最近在学习网页设计,陆续接触到了HTML、CSS和JavaScript,写的代码越来越多了,也越来越感觉到将代码上传到服务器上的流程太繁琐了。一开始我是用虚拟主机提供的控制面板下载上传网页代码,后来用FTP工具远程连接了虚拟机主机的FTP服务器,但是整个操作过程依旧不够简洁。这篇文章我将分享一个直接在Sublime Text 3里面连接FTP服务器,只使用Sublime Text 3就完成对远程FTP服务器上文件的下载、修改和上传等操作,提高网页编辑的效率。

1.配置插件安装环境

打开SublimeText3,使用Shift + Ctrl + P打开命令面板

输入:

install

选中输入框下面弹出的

Install Package Control

稍等一会就会弹出成功安装的提示。

使用Shift + Ctrl + P打开命令面板,输入:

install

选中输入框下面弹出的:

Install Package

稍等一会安装就会完成。

2.配置SFTP插件

使用Shift + Ctrl + P打开命令面板,输入:

SFTP

点击下面弹出的SFTP,等待完成安装。

之后依次打开:

File -> SFTP/FTP -> Setup Server

这时会看到下面的代码(其他代码没有列出,下面的中文注释是我添加上去的):

// sftp, ftp or ftps

   "type": "sftp", //如果使用的SFTP协议就用“sftp”,否则就改成“ftp”

   "sync_down_on_open": true,

   "sync_same_age": true,

   "host": "example.com", //在这里输入远程服务器的IP地址或者域名

   "user": "username", //在这里输入FTP用户名

   //"password": "password", //在这里输入FTP密码(注意去掉最前面的注释符号“//”)

   //"port": "22", //这里根据自己的情况填写,一般FTP对应21号端口,SFTP对应22号端口,同时记得去掉最前面的注释符号“//”

   "remote_path": "/example/path/",  //在这里选择远程服务器中有关项目的路径

配置完成后保存,就像保存其他文件一样,起一个名字,后缀命名为“.json”,点击保存就可以了。

(注:自动创建的保存路径是C:\Users\Master\AppData\Roaming\Sublime Text 3\Packages\User\sftp_servers)

3.下载并编辑远程FTP服务器上的文件

依次打开

File -> SFTP/FTP -> Browse Server

出现两个选项,一个是“Add New Server”另一个就是我们刚才配置好的远程FTP服务器。

选择我们刚才配置好的远程FTP服务器,就会列出“Folder actions”和“Up a folder”以及我们在配置文件里输入的远程FTP服务器项目路径下的文件夹和文件。点击之后会出现“Back to list”、“Edit”、“Rename”、“Chmod”、“Delete”选项,可以根据需要选择要进行的操作。编辑完成后,使用“Ctrl + S”组合键就可以将文件保存到远程FTP服务器上了。

HTML学习之制作导航网页

作者:荒原之梦

前言:
今天用HTML写了一个网址导航,源代码如下:

<html>

<head>
    <title>网址导航</title>
</head>

<meta charset="utf-8">

<body bgcolor="#F0E68C">

<form>
  <fieldset>
    <legend></legend>
  </fieldset>
</form>

<center>
    <legend><font size="6" color="green">网址导航</font>

    <br>

</center>

<form>
  <fieldset>
    <legend>英语学习</legend>

<nav>
    <font size="3">
        <a href="http://www.ftchinese.com/channel/ce.html">FT中文网 双语阅读</a>   |
        <a href="http://www.ftchinese.com/channel/speedread.html">FT中文网 FT英语速读</a>  |
        <a href="http://www.ftchinese.com/channel/ev.html">FT中文网 原声视频</a>   |
        <a href="http://www.ftchinese.com/channel/radio.html">FT中文网 FT英语电台</a>  |
        <a href="http://www.npr.org/">美国国家公共广播电台</a>    |
        <a href="http://edition.cnn.com/">美国有线电视新闻网CNN</a>  |
        <a href="http://www.bbc.com/news">BBC新闻</a> |
        <a href="https://www.ted.com/">TED</a>  |
        <a href="http://www.iciba.com/">金山词霸</a>    |
        <a href="http://fanyi.baidu.com/">百度翻译</a>  |
        <a href="http://fanyi.youdao.com/">有道翻译</a> |
        <a href="https://translate.google.cn/">Google翻译</a> |
        <a href="http://dict.cn/">海词词典</a>  |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>计算机资源镜像站</legend>

<nav>
    <font size="3">
        <a href="http://mirrors.aliyun.com/">阿里云开源镜像站</a>   |
        <a href="http://mirrors.163.com/">网易开源镜像站</a>   |
        <a href="http://mirrors.ustc.edu.cn/">中国科学技术大学开源镜像站</a> |
        <a href="https://mirrors.tuna.tsinghua.edu.cn/">清华大学开源软件镜像站</a> |
        <a href="http://ftp.sjtu.edu.cn/">上海交通大学开源镜像站</a>   |
        <a href="http://mirrors.zju.edu.cn/">浙江大学开源镜像站</a>  |
        <a href="http://mirror.neu.edu.cn/">东北大学开源镜像站</a>   |
        <a href="http://www.debian.org/mirror/list">Debian全球镜像站</a> |

    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>Linux</legend>

<nav>
    <font size="3">
        <a href="https://www.linux.org/">Linux</a>
        <a href="https://www.kali.org/">Kali Linux</a>  |
        <a href="http://www.kali.org.cn/">Kali Linux中文网</a> |
        <a href="https://www.ubuntu.com/index_kylin">Ubuntu Linux</a>   |
        <a href="https://www.centos.org/">CentOS Linux</a>  |
        <a href="https://access.redhat.com/">RedHat Linux</a>   |
        <a href="http://www.chinaunix.net/">ChinaUnix</a>   |
        <a href="http://www.linuxidc.com/">Linux公社</a>  |
        <a href="http://linux.vbird.org/">鸟哥的Linux私房菜</a>   |
        <a href="https://linux.cn/">Linux中国开源社区</a> |
        <a href="http://www.linuxdiyf.com/">红联Linux</a> |
        <a href="http://www.linuxeden.com/">Linuxeden开源社区</a>   |
        <a href="https://www.linuxfoundation.org/">The Linux Foundation</a> |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>计算机程序设计</legend>

<nav>
    <font size="3">
        <a href="https://www.python.org/">Python</a>    |
        <a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java SE</a>    |
        <a href="http://www.runoob.com/">RUNOOB</a> |
        <a href="http://www.w3school.com.cn/">W3school</a>  |
        <a href="https://www.eclipse.org/">Eclipse</a>  |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>资料查询</legend>

<nav>
    <font size="3">
        <a href="https://www.wikipedia.org/">维基百科</a>   |
        <a href="https://www.baidu.com/">百度</a> |
        <a href="https://www.bing.com/?intlF=">Bing</a> |
        <a href="https://www.zhihu.com/">知乎</a> |
        <a href="https://www.quora.com/">Quora</a>  |
        <a href="https://stackoverflow.com/">StackOverflow</a>  |
        <a href="http://www.chongbuluo.com/">虫部落</a>    |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>技术参考</legend>

<nav>
    <font size="3">
        <a href="http://www.williamlong.info/">月光博客</a> |
        <a href="http://www.freebuf.com/">FreeBuf</a>   |
        <a href="http://www.iplaysoft.com/">异次元软件</a>   |
        <a href="https://bbs.pediy.com/">看雪安全论坛</a> |
        <a href="https://www.2cto.com/">红黑联盟</a>    |
        <a href="http://bobao.360.cn/index/index">安全客</a>   |
        <a href="https://technet.microsoft.com/en-us/">Microsoft TechNet</a>    |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>代码维护</legend>

<nav>
    <font size="3">
        <a href="https://github.com/">GitHub</a>    |
        <a href="https://www.openshift.com/">OpenShift</a>  |
        <a href="https://about.gitlab.com/">GitLab</a>  |
        <a href="https://gitee.com/">码云</a> |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>站长工具</legend>

<nav>
    <font size="3">
        <a href="http://zhanzhang.baidu.com/">百度站长平台</a>    |
        <a href="http://tool.chinaz.com/">站长之家 站长工具</a> |
        <a href="https://thepaperwall.com/">The Paper Wall</a>  |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend>放松一下</legend>

<nav>
    <font size="3">
        <a href="https://daily.zhihu.com/">知乎日报</a> |
        <a href="http://jandan.net/">煎蛋</a> |
        <a href="http://www.guokr.com/">果壳</a>  |
        <a href="http://songshuhui.net/">科学松鼠会</a>  |
        <a href="http://www.sfw.com.cn/">科幻世界</a>   |
        <a href="https://what-if.xkcd.com/">What If</a> |
        <a href="https://www.bilibili.com/">哔哩哔哩</a>    |
    </font>
</nav>

  </fieldset>
</form>

    <br>

<form>
  <fieldset>
    <legend></legend>
  </fieldset>
</form>

</body>

</html>

Kali Linux安装中文输入法全纪录

作者:荒原之梦

 前言:

我使用的是英文版的Kali,默认没有安装中文输入法,也没有安装小企鹅(我后来才知道),折腾了很久,现在终于可以在Kali里输入中文了(这篇文章就是在Kali里面用leafpad写的).安装的过程有点曲折,现在整理一下思路,把正确的配置顺序记录下来.

 操作环境:

 Kali Linux 2017.2

补充Kali的国内更新源

终端输入:

leafpad /etc/apt/sources.list

打开更新源配置文件,将下面的更新源复制到原内容的前面:

#163网易 Kali源

deb http://mirrors.163.com/debian wheezy main non-free contrib

deb-src http://mirrors.163.com/debian wheezy main non-free contrib

deb http://mirrors.163.com/debian wheezy-proposed-updates main non-free contrib

deb-src http://mirrors.163.com/debian wheezy-proposed-updates main non-free contrib

deb-src http://mirrors.163.com/debian-security wheezy/updates main non-free contrib

deb http://mirrors.163.com/debian-security wheezy/updates main non-free contrib


#阿里云 Kali源

deb http://mirrors.aliyun.com/kali kali main non-free contrib

deb-src http://mirrors.aliyun.com/kali kali main non-free contrib

deb http://mirrors.aliyun.com/kali-security kali/updates main contrib non-free


#中科大 Kali源

deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib


#浙江大学 Kali源

deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free

deb-src http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free


#东软大学 Kali源

deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib

deb-src http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib


#重庆大学 Kali源

deb http://http.kali.org/kali kali-rolling main non-free contrib

deb-src http://http.kali.org/kali kali-rolling main non-free contrib


#官方Kali源

#deb http://http.kali.org/kali kali-rolling main non-free contrib

#deb-src http://http.kali.org/kali kali-rolling main non-free contrib

之后保存退出.

删除包缓存中的所有包(即删除已安装的软件的安装包,这一步不是必须执行,只是为了清理一下硬盘空间)

终端输入:

apt-get clean

下载系统更新

终端输入:

apt-get update

下载过程中会有”yes or no”的询问,如果是在终端中询问,则输入”y”,回车即可,如果是弹出的窗口询问,则用方向键选中”OK”回车即可。

安装更新

如果想更稳定的安装更新,可以使用:

apt-get upgrade

如果想在安装更新的时候让系统拥有更多的自主选择权(比如在软件依赖关系发生变化的情况下让系统自主做出处理)可以使用:

apt-get dist-upgrade

安装fcitx小企鹅和google拼音输入法

apt-get install fcitx-googlepinyin

注:如果出现软件依赖关系错误,则输入

apt-get install -f

使用默认,之后重新执行安装指令。

安装fcitx小企鹅的GUI界面

apt-get install fcitx-config-gtk2

下载搜狗拼音输入法

下载地址:http://pinyin.sogou.com/linux/?r=pinyin

(输入中文还是用国产输入法更好,第五步安装google输入法的步骤其实主要是为了安装fcitx)

这里需要注意的是,如果你的Kali是64位的就下载X64的安装包,如果是32位的就下载i386的安装包,否则的在安装过程中会报错,无法继续安装(64位的机器安装32位的也会报错,无法安装).

在搜狗输入法安装包所在的文件夹里面右键打开终端,输入:

dpkg -i 软件包名

注:如果出现软件依赖关系错误,则输入

apt-get install -f

使用默认,之后重新执行安装指令。

reboot重启

配置中文输入法

打开Fcitx Config Tool

在“Addon”标签栏中选中搜狗输入法后点击“configure”配置

之后在Fcitx Config Tool的Input Method选项卡中

用窗口中的向上箭头将搜狗输入法放置到第一项

Done。

Kali Linux桥接模式配置DNS服务器

作者:荒原之梦

操作环境:

虚拟机操作系统:

Kali Linux 2017.2

虚拟化软件:

VMWare Workstation 14 pro

操作前的准备:

1.在设置里将Kali的上网模式设置成“桥接模式”。

2.阿里公共DNS(官网:http://www.alidns.com/):

233.5.5.5

233.6.6.6

打开DNS配置文件

输入:

leafpad /etc/resolv.conf

注:这里是用leafpad打开的,也可以使用vi或vim编辑器打开。

将DNS服务器地址填入并保存

将下面两个阿里公共DNS的地址填入原DNS地址的前面:

nameserver 223.5.5.5

nameserver 223.6.6.6

注:如果放在原DNS地址的后面,则计算机仍会先使用原来的DNS服务器进行解析,如果原DNS服务器存在问题,那么此时可能仍然无法上网。

KaliLinux安装VMWareTools

作者:荒原之梦

操作环境:

虚拟机操作系统:

Kali Linux 2017.2

虚拟化软件:

VMWare workstation 14 pro

一、加载光盘

在VMWare上一次点击“虚拟机->安装VMWare Tools”,加载VMWare Tools的光盘。

二、解压VMwareTools-10.1.15-6627299.tar.gz

双击打开光盘,将里面的VMwareTools-10.1.15-6627299.tar.gz文件复制到桌面。

cd 进入桌面

输入

tar -zxvf VMwareTools-10.1.15-6627299.tar.gz

解压VMwareTools-10.1.15-6627299.tar.gz

三、进入解压后得到的文件夹vmware-tools-distrib

输入

./vmwareinstall.pl

开始安装。

之后使用默认,一路回车即可。

注:由于版本不同,以上文件的名称可能会有变化,请根据自己操作环境的实际情况使用上述命令。

磁盘上没有足够的空间完成此操作的解决办法_Windows小知识

作者:荒原之梦

2018年01月02日更新:

最近在给曾经将基本磁盘转换成动态磁盘的电脑重装系统时发现WindowsXP系统不能安装在动态磁盘上。我现在还没有对其他系统是不是可以安装在动态磁盘上做过实验,只知道WindowsXP是不能安装在动态磁盘上的。在这里提供给大家一个磁盘管理软件PAInstall,可以将动态磁盘很方便的转换成基本磁盘。下载链接


前言:

我们有时候调整系统分区时会遇到“磁盘上没有足够的空间完成此操作”的情况导致我们的分区无法完成,然而我们的磁盘上明明有未分配的空间,为什么不能创建磁盘分区呢?本文将介绍通过把Windows7上的基本磁盘转换成动态磁盘的方法来解决这个问题。

操作环境:

Windows7旗舰版

下图绿色部分是产生“磁盘上没有足够的空间完成此操作”问题的磁盘:

图 1

当我们要对该空闲磁盘区域“新建简单卷”时就会弹出下面的错误提示:

图 2

解决过程:

1.Win+R”输入

diskpart

2.在弹出的DOS窗口中输入

list disk

如下图,可以看到“磁盘0”对应的有大约70G的空闲空间,也就是刚才新建简单卷出错的绿色磁盘区域。

图 3

3.输入

select disk 0

选中磁盘0

图 4

4.输入

convert dynamic

将磁盘0由基本磁盘修改成动态磁盘

图 5

修改成功

如下图,刚才的绿色区域也改变了颜色:

图 6

此时我们再新建简单卷就可以创建成功了:

图 7

附:

本文用到了动态磁盘的知识。动态磁盘和基本磁盘的几个主要区别如下:

1.基本磁盘受26个字母的限制,因此基本磁盘的盘符只能是26个字母中的其中一个,动态磁盘则不受这个限制。

2.在基本磁盘上只能创建4个主分区。

3.从基本磁盘修改成动态磁盘数据可以不丢失,但是从动态磁盘修改成基本磁盘数据会丢失。

4.基本磁盘如果要扩容,只能使用右侧(磁盘管理界面中的右侧)的相邻空闲磁盘空间,而动态磁盘扩容则可以不是相邻的空闲磁盘空间。

5.如果电脑里有两块硬盘,那么动态磁盘的一个分区可以同时使用这两块磁盘的存储空间,也就是说,对于动态磁盘而言,两块硬盘和一块硬盘用起来是一样的。

使用XAMPP和DVWA在Windows7上搭建渗透测试环境

作者:荒原之梦

前言:

XAMPP是一个Web应用程序运行环境集成软件包,包括MySQL、PHP、PerI和Apache的环境及Apache、MySQL、FilleZilla、Mercury和Tomecat等组件。DVWA是一个用于练习渗透测试的脆弱系统,可作为渗透测试的演练靶场。本文将介绍使用XAMPP和DVWA搭建Web渗透测试环境。

操作环境:

Windows7旗舰版

操作前的准备:

1.下载XAMPP(官网下载链接:https://www.apachefriends.org/download.html

2.下载DVWA(官网下载链接:http://www.dvwa.co.uk/

一安装XAMPP

双击XAMPP安装包,但却弹出了如下的警示信息:

图 1 警示说“你的机器上正在运行着杀毒软件,在某些情况下杀软会减慢或者干涉软件的安装”,这里我们先选择“是”,如果安装不成功,我们再把杀软关掉,重新安装XAMPP。
图 2 Next
图 3 Next
图 4 Next
图 5 Next
图 6 Next
图 7 Installing
图 8 安装完成

在开始按钮的“所有程序”处找到刚刚安装的XAMPP打开XAMPP Control Panel(XAMPP控制面板)。

图 9

其中红色的“X”表示该组件尚未设置成Windows的系统服务,空白的框则表示没有安装该组件。我们可以点击红色的X将对应的组件设置成系统服务,当然,不设置成系统服务也可以点击“start”启动对应的服务。

在这里我们点击start启动Apache和MySQL两个组件,稍等一会后在浏览器输入127.0.0.1/phpmyadmin就可以进入MySQL数据库。进MySQL数据库并没有要求我们输入帐号和密码进行登录,因为此时MySQL的root账户等其他几个账户的密码默认是空的,我们可以通过“账户->修改权限->修改密码”对用户进行密码修改操作:

图 10

这里我们修改的是本地root用户的密码,输入密码后点击“执行”就可以看到密码修改成功的提示了。

图 11

但是当我们刷新127.0.0.1/phpmyadmin时却出现了如下的错误提示:

图 12

这是因为我们刚才只是修改了MySQL的root密码,但是phpmyadmin和MySQL进行通信的密码还默认是原来的空密码,没有更新成我们现在使用的密码。解决办法是,用Sublime Text 3(Sublime Text 3官网:http://www.sublimetext.com/)打开xampp\phpMyAdmin目录下的config.inc.php文件夹

$cfg['Servers'][$i]['password'] = '';

在这一行的单引号里填入刚才设置的本地root用户的密码,保存。

图 13

此时再刷新127.0.0.1/phpmyadmin就可以登录了。

二配置DVWA

将下载的DVWA的压缩包复制到xampp\htdocs目录下,解压,去掉压缩产生的嵌套文件夹,将DVWA默认的文件名改为dvwa。

图 14

在浏览器里输入127.0.0.1/dvwa,回车,显示错误:

“DVWA System error – config file not found. Copy config/config.inc.php.dist to config/config.inc.php and configure to your environment.”

翻译一下大致意思就是:“DVWA系统错误-配置文件没有找到。复制配置/ config.inc.php.dist到/ config.inc.php并配置您的环境。”

按照这段提示,我们去刚才放置dvwa的目录下,打开config目录,将其中的/config.inc.php.dist该名为/config.inc.php(即去掉.dist),之后刷新http://127.0.0.1/dvwa即可打开dvwa:

图 15

打开xampp\htdocs\dvwa\config目录下的config.inc.php文件(即刚才修改过后缀名的文件)

$_DVWA[ 'db_password' ] = 'p@ssw0rd';

在这一行的p@ssw0rd换成之前修改的MySQL数据库的root用户密码,保存。

点击http://127.0.0.1/dvwa页面下方的“Create / Reset Datebase”即可。

图 16

创建完成后自动进入登录页面,账户是admin,密码是password。

图 17

成功登陆

图 18

注:每次打开DVWA之前都需要到XAMPP的控制台确定已经启动Apache和MySQL的服务。

使用WampServer和DVWA在Windows10上搭建渗透测试环境

作者:荒原之梦

前言:

DVWA是一个具有脆弱性的Web测试应用,需要PHP和MySQL的环境支持。我们可以手动配置DVWA所需的运行环境,也可以使用WampServer进行搭建。WampServer是集成了Apache Web服务器、PHP解释器和MySQL数据库的集成安装环境。本文将介绍使用WampServer和DVWA在Win10上搭建一个渗透测试环境。

操作环境:

Windows10专业版

操作前的准备:

1.下载WampServer(下载地址:https://sourceforge.net/projects/wampserver/?source=directory

2.下载:DVWA(下载地址:http://www.dvwa.co.uk/

一、安装WampServer:

这里我们使用的是WampServer3.1.0 X64.

图 1 这一步选择安装时使用的语言,默认用英语就好了。
图 2 接受协议,下一步。
图 3 继续下一步。
图 4 选择安装路径,建议选择一个非系统盘。
图 5 下一步。
图 6 点击“Install”开始安装。
图 7 安装正在进行中……
图 8 提示让选择默认浏览器。
图 9 选择“是”之后,使用默认,点击“打开”。
图 10 提示让选择默认文本编辑器。
图 11 选择“是”之后,使用默认,点击“打开”

注:在安装快要结束时会弹出防火墙警示,选择“允许访问”即可。

图 12 Finish

安装完成后会在桌面上创建一个WampServer的图标(我们可以在小图标上右键选择语言为中文),双击该图标后Windows会黑屏警示,选择“是”之后,任务栏小图标处会多出一个WampServer的绿色图标,在浏览器输入“127.0.0.1”就会显示WapServer的界面了(如下图所示)。

图 13

二、配置MySQL数据库

安装WampServer的过程中并没有让我们设置数据库账号和密码的步骤,所以此时我们的数据库的root密码还是空的

输入“127.0.0.1/phpmyadmin”进入登录界面:

图 14

用户名root,密码不填,选择服务器为MySQL即可登录MySQL数据库。

接下来我们就要修改MySQL数据库的root密码了,我们在后面配置DVWA的过程中需要用到数据库root用户的密码。

图 15

点击“账户”,我们能看到root用户的密码是空的,点击“修改权限”可以在页面上方看到修改密码的选项,如下图:

图 16

两次输入密码后点击“执行”就可以了:

图 17
图 18

但是当我们再次输入http://127.0.0.1/phpmyadmin/准备登陆MySQL时,却出现了下面的警示:

图 19

这是因为phpmyadmin数据库里面的登录信息还是原来的(而我们以已经在MySQL里修改了root密码),和我们现在使用的root用户的密码不一致。我们使用修改后的密码登陆一下,发现可以登陆,然后再退出,再次输入http://127.0.0.1/phpmyadmin/发现已经没有错误提示了,此时phpmyadmin的数据库登录信息已经更新了。


图 20

三、配置DVWA

首先把我们下载好的DVWA压缩包放到WampServer安装目录里的www文件夹下,解压。(解压后会产生同名的嵌套文件夹,最好去掉一层),将DVWA所在文件夹的名称修改为“dvwa”,将wamp64\www\dvwa\config目录下的config.inc.php.dist文件后面的.disk后缀删除。

图 21 将图中的DVWA-master改成dvwa

之后打开DVWA文件夹中的config文件夹,用Sublime Text3(或其他记事本软件)打开config.inc.php:

图 22 图中的.dist后缀还没有去掉,也可以先修改后去掉.dist后缀

修改其中的数据库密码为我们刚才创建的MySQL数据库的root密码,保存:

图 23

在浏览器输入127.0.0.1/dvwa,输入admin账号和密码,密码默认为password,之后点击“Create / Reset Datebase”即可安装DVWA,安装完成后会自动跳转到登录界面,再次输入admin和password即可登陆,至此渗透测试环境搭建完成:

图 24

请告诉我,你还在

作者:荒原之梦

“要想晚上回家的时候好好练字,先要有一个亮的灯泡,我家的现在都是35瓦的,不能太暗了……”

这是小学时语文老师跟我们说怎么才能练好字的时候说过的话(大致意思是这样的)。可是,那个时候我们家的电灯泡是15瓦的,虽然现在的LED灯用15瓦的功率已经可以做的很亮了,可如果是白炽灯的话,这个功率只能是比点一根蜡烛亮一点。

今天,我拿起毛笔,用繁体中文写下了《长歌行》里的一句诗:

“青青园中葵,朝露待日晞”。

当我只见过15瓦的灯泡时,我不知道35瓦的是什么样,当我只知道“朝露待日晞”时,我无法想象还会其他的生活方式。日子就是这样变了,悄无声息,坚定不移。

我记得,那盏15瓦的灯泡从卧室换到厨房,前后一共亮了很多年。昏黄的,可以直接看到橘色的灯丝。很多年来,它就那样一直挂在屋顶,渐渐地布满了灰尘——似乎从一开始就布满了灰尘。那真的是一盏有温度的灯啊,承载着多少个日日夜夜的风晴雨雪,聆听过多少首“百川东到海,何时复西归”的诗句呀。

每到睡前,拉上开关,看着它渐渐地收缩起布满整个屋子的光线,那是比“晚安”更真实可爱的香甜。

很多年过去了,写字的人又坐在了灯下——

“松下问童子,言师采药去。
只在此山中,云深不知处。”

那一撇一捺,仍然是一撇一捺,只是这横竖之间总是见不到当年的气息了。在那个上早读还要自己带蜡烛的小学里,古诗是那么有味道啊,是凌晨的鸡鸣,还有早读之后回家吃到的炒白菜的味道。

那年,我想用一支秃笔写尽山河壮阔,那年,我想凭一己之力成为一座山峰。

今天,我仍然想。

想那些痴傻痴傻的梦,那个在最灰头土脸的时候仍然固执己见的天涯浪子,那才是我啊,活在某个平行的宇宙。

但是,谁能证明你真的经历过你记忆里的过去?那些凉凉的露水,毛茸茸的虫子,那盏15瓦的灯泡,那一次一次飞驰在夜里自翊为宇宙之王的时刻,他们在哪里?只是在记忆里吧,如果他们只是记忆——

这是一个无法得证的命题,所有人的上一秒都只剩下了记忆,所有人的记忆都不能自证真实,更无法佐证他人。

世界上哪些事才是有价值呢?就像我们在做一件事前总是会被问到:“你做这有什么用?”,这样的问题真的很有难度,因为价值本身只是一个定义,不巧的是,每个人心里对价值的定义和衡量方法并不一致。

有些事情,当你沉浸其中,自得其乐时,别人是很难理解你的快乐的,就像我记忆里的那盏15瓦的灯泡,即使布满了灰尘,却仍然在我心中树立起了一道直通天际的光,那是从梦想到梦想的胜利。

“朝辞白帝彩云间,千里江陵一日还。
两岸猿声啼不住,轻舟已过万重山。”

千百年过去了,当这些诗句第一次坠落在笔端时,真不知它们会以怎样的好奇心看待这个世界。一词一句,被传诵了无数遍,每当我们再一次提笔重新誊写这些诗句时,那随着笔毫浸润到纸上的墨汁里也许都暗藏着一个不为人知的新生。

人生最伟大的作为就是让人们记住自己的贡献,然而这个世界终究会忘记一切。一盏灯的光亮终究会被吞噬,一个价值的定义终究会被改写,当我们想创造永恒时,永恒却已被永恒替代。

DOS系统常用命令

作者:荒原之梦

前言:

DOS命令是DOS操作系统使用的命令。DOS操作系统是一种磁盘操作系统,从Windows95、98到今天的Windows10都内置有DOS操作系统。可以通过“win+R”,输入“cmd”的方式进入DOS系统命令行模拟操作界面。虽然图形化界面在日常使用中可以提供更加友好的人机交互体验,但是在有些时候,特别是当我们需要计算机执行一些较为专业的任务时,命令行模式将更加方便快捷。本文将介绍一些常用的DOS命令和简单用法,关于一些命令的具体参数,可以在需要时使用“命令名称 /?”或“命令名称 -?”查看对应命令的帮助文档。本文将保持更新。

1.cd命令(用于改变命令提示符所在的目录

D:
切换到D盘。
cd..
退回上一级。
cd Test
进入当前路径下名为“Test”的文件夹。(如果我们需要一次进入多层目录,最好使用绝对路径,如果路径比较长,我们可以在文件资源管理器中复制对应的路径后粘贴在cd的后面,注意DOS窗口不支持快捷键粘贴。另外,DOS命令也支持Tab键自动补全命令。)

2.cls命令(用于清空屏幕内容

cls只会清空屏幕内容,并不会删除最近使用的命令的记录,我们仍然可以使用上下方向键查看我们刚才使用过的命令。

3.dir命令(用于查看磁盘中包含的文件

dir D:\Test
列出绝对路径D:/Test下的所有目录和文件。
在过去的操作系统中,使用“dir D:\Test”显示文件的一个缺点就是当Test中的目录及文件过多时就会发生无法完全显示的情况,但是在新版本的windows上已经不存在不可以翻页的问题了,因为Windows上的DOS窗口是模拟的,已经加入了滚动条。
dir/a:a
查看当前路径下的存档文件即只列举文件而不列举其他。(注意dir和/之间是可以没有空格的,有没有空格都能执行得到正确结果)。其中“/a:”表示文件属性,隐藏文件的属性为“h”,目录文件的属性为“d”,系统文件的属性为“s”,只读文件的属性为“r”。
dir/o:n
按字母顺序列出当前路径下的所有目录和文件。其中“/o:”参数代表排序方式,“n”即代表按照文件名的字母顺序排列;“e”代表按照文件扩展名的字母顺序来显示其中包含的文件或文件夹。
dir /b /s
去掉摘要信息并顶格显示当前路径下的所有文件(包括嵌套文件)的完整路径和文件名称。
dir *.txt
dir命令也可以用于模糊查询,比如“dir *.txt”命令就可以用于查找当前路径下所有后缀名为.txt的文件,但是dir只能模糊查找当前目录下的文件,如果当前路径下有嵌套文件夹,那么这些文件夹里的*.txt文件并不会被查找出来。

4.ping命令(因特网包探索器)命令(用于查看网络是否连接或者网络连接速度。

ping [domain name]
可以用来判断是否能连通该域名对应主机并帮助判断该域名对应主机的操作系统类型。ping命令能够显示TTL值,而运行不同操作系统的主机设置的TTL值是不同的,一般地,TTL值对应的操作系统如下:
128:WindowsXP/2003
64:Linux
255:Unix
但是用TTL值判断目标主机运行的操作系统类型并不准确,TTL值真正的作用是用于指定IP包被路由器丢弃前允许通过的最大网段数量。TTL值其实是可以更改的,只要不大于十进制255就可以,而且网络管理员一般都会修改操作系统默认的TTL值,这能够在一定程度上防止别人轻易知道自己主机上运行的系统类型。
 ping [domain name] -t -l 65500
向指定domain name的主机连续发送长度位65500Byte(默认是64Byte,最大长度为65500Byte)的数据,直到连接中断。
 需要注意的是网络中有些主机是ping不通的(比如一般情况下用外网ping校园网内的主机是ping不通的,但是用校园网ping校园内的主机是可以ping通的),因为这些主机禁用了ICMP(Internet控制报文协议)回应或者可能开启了ICMP过滤,这样做可以避免有人向目标主机发动“ICMP攻击”(长时间、连续和大量的向目标主机发送ICMP数据包),导致目标主机消耗大量的系统资源来处理这些数据包,进而导致系统瘫痪。同时,由于ICMP协议本身的特点决定了它非常容易被用于攻击网络上的路由器和主机,因此限制ICMP的功能也能够让主机在互联网中更加安全。
ping 127.0.0.1
127.0.0.1是本地回环地址,ping 127.0.0.1如果能够ping通则表明本地TCP/IP协议没有问题。
注:ping命令后面可以跟很多参数,具体用法可以在DOS窗口输入“ping /?”查看。

5.netstat 命令(用于监控TCP/IP网络的工具,可以统计并显示与IP、TCP、UDP、ICMP相关的统计信息,可以显示路由表、实际的网络连接和每个网络接口设备的状态信息,因此可以用于检验本机各端口的网络连接情况。

netstat -n (or netstat)
查看服务器活动的TCP/IP连接,即所有已经建立的有效连接。
netstat -r
查看本机路由信息
netstat -a
显示本机所有活动的TCP连接及计算机侦听的TCP和UDP端口,包括已建立的连接、监听连接请求的连接、已断开的连接和处于联机等待状态的连接等。
netstat -an
显示本机所有连接的端口及其状态。
netstat -e
显示关于以太网的统计数据(一些基本的网络流量),包括发送和接收的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量等。
注:关于netstat命令的更多用法可以在DOS窗口输入“netstat /?”查看。

6.ipconfig命令(显示本机网络适配器的IP地址、子网掩码和默认网关等信息,包括虚拟机的相关信息

ipconfig /all
这个命令比单独输入ipconfig返回的信息更加详细。可以查看所有适配器的IP地址、子网掩码和默认网关,以及主机的祥光配置信息,例如:主机名、DNS服务器、结点类型、网络适配器的物理地址、DHCP服务器信息等。
注:ipconfig还有一些其他参数,可以需要时使用“ipconfig /?”查询。

7.tracert命令(显示数据包到达目标主机所经过的路径并显示到达每个结点的时间

tracert的命令格式为:
tracert [-d] [-h MaximumHops] [-j Hostlist] [-w Timeout] [-R][-S srcaddr][-4][-6][TargetName]
上述各个参数代表的意义如下:
-d 不将地址解析目标主机的名字,可以加快tracert命令的执行。
-h MaximumHops 指定搜索到目标地址的最大跳跃步数,默认为30个跳跃点。
-j Hostlist 按照主机列表中的地址释放源路由(仅适用于IPv4协议)。
-w Timeout 指定等待每个回复的超时时间,默认单位为毫秒。
-R 跟踪往返行程的路径(仅适用于IPv6协议)。
-S srcaddr 指定要使用的源地址(仅适用于IPv6协议)。
[-4][-6] 自定义使用IPv4或Iv6协议。
TargetName 指定目标主机的名称或IP地址。

 8.nslookup命令(用于检测网络中的DNS服务器是否能正确实现域名,该命令可以用于查看IP地址对应的域名

nslookup [IP or damain name]

9.at命令(该命令可以使指定的命令或程序在指定的计算和指定的时间运行,在IPC入侵时可以使用该命令来设置计划任务,让指定的程序在指定的计算机中按指定的时间启动。at命令可以代替Windows中的“计划任务”。)

at 11:00 c:\text.exe
让C盘根目录里的text.exe程序在11点00分运行
at 11:00 /every:16,17 c:/text.exe
在每月的16号和17号的11点00分运行text.exe程序
at
查看刚添加的计划任务的详细信息
at 16:16 shutdown -s -T30
在16点16弹出“系统关机提示框”,并关机。
另外,at命令还可以指定一周内的某一天火某几天:
date用于指定一星期内的一天或多天,分别用M T W Th F S Su表示。

Kali Linux图形界面与命令行界面的切换

作者:荒原之梦

前言:

有时候为了节约系统资源,使用命令行界面能够让Linux系统的运行更加流畅,处理任务的速度也更加快。现在的Kali安装完成后默认是开机就启动图形化界面。本文将介绍通过编辑Kali启动引导文件的方法,使得我们可以在Kali的图形化界面和命令行界面之间切换。

操作环境:

虚拟化软件:VMware Workstation 14 pro

虚拟机操作系统:Debian 4.12.6-1 kali6(201702版Kali Linux,安装在VMware Workstation 14 pro中

物理机操作系统:Windows10专业版

一、用vi编辑器打开引导配置文件:vi /etc/default/grub

找到“GRUB_CMDLINE_LINUX_DEFAULT=”quiet””这一行,将光标停在这一行的某处,使用yy复制当前行正行内容到剪贴板,之后回车创建一个空白行,使用p将刚才复制的内容粘贴在当前光标之后,然后注释掉该行(方便以后如果有需要的话再改回来),最后按i在写入模式下把原行中的“quiet”改成“text”,保存退出。

二、输入sudo update-grub更新Kali Linux的启动引导,使我们刚才修改的grub配置生效

切换方法:

按“Ctrl+Alt+f3”(笔记本一般是按“Ctrl+Alt+fn+f3”)即可切换到命令行模式;

按“Ctrl+Alt+f1” (笔记本一般是按“Ctrl+Alt+fn+f1”)可以切换回图形化界面(如果无法切换,请尝试重启)。

 

SQLMap入门之在Windows上安装SQLMap

作者:荒原之梦

前言:

SQLMap是一个开放源代码的sql注入工具,SQLMap是使用Python语言开发成的,他的运行需要有Python环境的支持。写这篇文章时我使用的SQLMap版本是“sqlmap-1.1.10”,这个版本的SQLMap还不支持Python3.x,必须使用Python2.x的环境才能运行,Python2.x和Python3.x并不互相兼容。本文主要介绍在已搭建Python2.x环境的前提下,安装SQLMap的步骤。

操作环境:

Python-2.7.14

SQLMap-1.1.10

Windows10专业版

一、将SQLMap的压缩包放到Python2.x的安装目录下,解压:

SQLMap入门之在Windows上安装SQLMap
图 1

二、桌面右键,新建快捷方式

对象位置填写“cmd”:

SQLMap入门之在Windows上安装SQLMap
图 2

快捷方式名称命名为SQLMap:

SQLMap入门之在Windows上安装SQLMap
图 3

在快捷方式上右键属性,将“起始位置”改为刚才放置SQLMap安装包路径的下一级路径,如图所示:

SQLMap入门之在Windows上安装SQLMap
图 4

三、双击打开刚才创建的快捷方式

输入sqlmap.py -h,如果出现以下界面则表示SQLMap安装成功:

SQLMap入门之在Windows上安装SQLMap
图 5

附:

如果我们把SQLMap安装在了Python3.x的环境中会发生什么呢?当我们输入sqlmap.py -h时,他会提示我们使用Python2.x:

SQLMap入门之在Windows上安装SQLMap
图 6

如果你想同时使用Python2.x和Python3.x可以参考我的这篇博文:

在Windows下同时安装Python2.x和Python3.x

在Windows下同时安装Python2.x和Python3.x

作者:荒原之梦

前言:

Python现在是两个版本共存,Python2.x和Python3.x都同时在更新。但是Python2.x和Python3.x的区别还是很多的(以后我可能会写一篇文章列举一下Python2.x和Python3.x的具体区别)。如果是刚开始学习Python的话,那么使用Python3.x更好,但是目前(2017年10月8日)很多服务(例如SQLMap)依赖的Python环境都是Python2.x才能提供的,为了解决这个问题我们可以同时安装两个版本的python,即把python2.x和python3.x都安装上,在使用过程中根据需要调用不同的Python环境。

操作环境:

Python-2.7.14

Python-3.6.3

Windows10专业版

操作前的准备:

在安装Python2.x和Python3.x之前,我们需要在磁盘根目录下建一个文件夹,命名为“Python”,在Python文件夹下面再建两个文件夹,分别命名为“Python2”和“Python3”。其实这么做不是必须的,只是将Python2.x和Python3.x分别对应安装在这两个路径下会方便我们今后寻找(需要注意的是,Python的安装路径中不允许有空格,如果在你的安装路径中一定要将不同单词分隔开来的话,可以使用大小写字母区分,或者使用下划线“_”。另外,安装路径中最好不要出现中文)。

Python的官网地址:https://www.python.org/

Python官网上提供有Python2.x和Python3.x for Windows的下载。其中Python2.x是以Microsoft Installer(微软格式安装包)的形式提供的,文件后缀为.msi,Python3.x是以.exe可执行程序的形式提供的,安装的第一步都是双击运行。

一、安装Python2.x

双击之后就是按照提示点击就可以了,都是常规的安装方法。唯一需要改动的地方就是变一下安装路径,方便我们下一步的配置Path环境变量。

配置环境变量:

a.Windows上Python Path环境变量配置

此电脑->右键属性->高级系统设置->环境变量->系统变量->Path:

在Windows下同时安装Python2.x和Python3.x
图 1

之后编辑环境变量,将Python2.x的安装目录粘贴上,一路点击确定就完成了Python2.x的Path环境变量配置:

在Windows下同时安装Python2.x和Python3.x
图 2 可以看到Windows10的Path环境变量是分栏显示的
在Windows下同时安装Python2.x和Python3.x
图 3

b.Win/8.1/8/7/XP上Python Path环境变量配置

Win/8.1/8/7/XP配置环境变量的操作都比较类似,而且和在Windows10上的步骤也相似(下面的Path环境变量截图使用的是Windows7):

计算机->右键属性->高级系统设置->环境变量->系统变量->Path:

之后编辑Path环境变量。不过这里需要注意的是,由于Win/8.1/8/7/XP的环境变量并没有像Windows10一样分栏显示,因此再添加Path环境变量时不要忘记用英文分号“;”将新添加的环境变量与原有的环境变量分隔开:

在Windows下同时安装Python2.x和Python3.x
图 4

配置好环境变量后重更新打开DOS窗口(可以用cmd,也可以用powershell,但一定要是配置好环境变量后重新打开的,不能用配置好环境变量之前打开的DOS窗口)输入python即可检查Python是否安装成功:

在Windows下同时安装Python2.x和Python3.x
图 5

二、安装Python3.x

Python3.x已经不需要我们在手动配置环境变量,我们只需要在安装时做一些调整,改默认安装路径到我们刚才建立的Python3文件夹里就可以了。关于如何在电脑里安装Python3.x,可以查看我之前的一篇博文Python基础之Windows下Python3.x环境搭建.

三、区分Python2.x和Python3.x

在Python2.x和Python3.x的安装路径里都有一个名为python.exe的文件(下图所示为Python3.x安装目录里的python.exe):

在Windows下同时安装Python2.x和Python3.x
图 6

为了能根据我们的需求调用不同的Python环境,我们需要在安装目录里把python.exe改名,只改Python2.x和Python3.x的其中一个就可以了(为了运行sqlmap不要把python2.x 的python.exe文件改名成python2.exe,这样做会使sqlmap在调用python2.x的时候显示拒绝访问,直接用原名称python.exe即可)但是卸载时需要把名字改回来,否则会报错,无法卸载。

我把Python3.x的python.exe重命名为python3.exe,Python2.x的python.exe保持不变,这样我在DOS窗口A输入” python3”就调用了Python3.x:

在Windows下同时安装Python2.x和Python3.x
图 7

在另一个DOS窗口B(不能和刚才DOS窗口A是一个窗口)输入python就调用了Python2.x:

在Windows下同时安装Python2.x和Python3.x
图 8