简介 :
这么简单的题,是WEB吗?
题目入口:[http://web.jarvisoj.com:9891/](http://web.jarvisoj.com:9891/)
分析 :

- 首先是一个登录界面 , 只有一个密码输入框 , 最开始以为是注入
在这里折腾好久 , sqlmap 都用上了...不过最后都没有后还是没用 - 然后找一下看看有没有出题人的提示 , 在响应头和 cookie 中也都没有发现什么有用的信息
- 注入试了千百遍无果以后 , 沉下心来看看源码吧 , 说不定会有什么收获呢 ?

- 看看 js 和 css 吧 , 只有一个 app.js 是出题人自己写的 , 其他的都是 cdn , 所以只需要看这个
后记 :
之后在查了一下 , 应该是 react.js
但是并不会..._(:3 」∠)_

- 格式化一下吧

- 留意到之前看这个页面的源码的时候并没有发现 form 表单 , 但是输入的密码确实是被以 post 的形式发出去了 , 所以说这个 app.js 中必然有对 http post 的支持 , 那么就直接搜索一下吧


- sublime 直接帮我们定位到了函数的定义


- 感觉这个函数比较可疑 , 拖出来看看

-
(⊙v⊙)嗯 , 看来似乎是个密码验证的函数 , 经过分析发现这是一个 25 元一次方程组 , 而当函数的参数 e 是这个方程组的解得时候就返回 1
-
感觉就要出来了 , 在线解呗


#!/usr/bin/env python
data = [81,87,66,123,82,51,97,99,55,95,49,115,95,105,110,116,101,114,101,115,116,105,110,103,125]
flag = ''
for i in data:
flag += chr(i)
print flag
网友评论