Pwnable-Bof writeup

个人比较菜 就想分享下自己的思路和过程 如果有问题欢迎大家批评指点

题目网站:http://pwnable.kr

题目

Bof 32位经典缓冲区溢出题目

解题过程

因为题目提供了源码所以先看看代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void func(int key){
char overflowme[32];
printf("overflow me : ");
gets(overflowme); // smash me!
if(key == 0xcafebabe){
system("/bin/sh");
}
else{
printf("Nah..\n");
}
}
int main(int argc, char* argv[]){
func(0xdeadbeef);
return 0;
}

关于phpmyadmin GetShell思路总结

看了网上的许多文章 总结的不是很到位 这里在根据自己的经验总结一些 如有漏缺 请联系我~

低权限读文件

用到的mysql语句

1
LOAD DATA LOCAL INFILE 'C:/mysql/data/mysql/user.MYD' INTO TABLE test fields terminated by '' LINES TERMINATED BY '\0';

LOAD DATA LOCAL INFILE 继承的是 执行客户端 用户权限 且只能读 mysql客户端 本地 文件

webshell 中如果能读取 user.MYD 文件 ,LOAD DATA LOCAL INFILE 就能读该文件
若webshell 中不能读取 user.MYD文件,LOAD DATA LOCAL INFILE  就不能读该文件

使用方法: 利用场景 phpmyadmin 或其它可执行sql 命令的 地方并且站库同服务 情况下读取相关配置文件 ,或在权限配置不当情况下 读 user.MYD

,