博客
关于我
[NESTCTF 2019]Love Math 2
阅读量:790 次
发布时间:2019-03-25

本文共 507 字,大约阅读时间需要 1 分钟。

通过对提供的代码的分析 ,可以看到这是一个用于信息安全练习的PHP页面,主要目的是防止直接访问源码并限制输入的某些操作。以下是详细解析:

  • 源码隐藏和条件判断

    页面首先隐藏了源码并设置了一个条件判断,检查是否存在GET参数c,如果不存在则显示源码;否则继续执行后续逻辑。

  • 输入长度限制

    检查了GET参数c的长度,只允许不超过60个字符,超过则提示“太长了不会算”。

  • 字符黑名单

    定义了一系列需要禁止的字符,并使用正则表达式匹配这些字符,如果发现输入中含有这些字符,则提示“请不要输入奇奇怪怪的字符”。

  • 函数白名单

    提供了一个允许使用的数学函数列表,确保用户只能使用这些预定义的函数。如果输入了不在白名单内的函数,则提示“请不要输入奇奇怪怪的函数”。

  • 代码执行

    最后通过eval函数执行用户输入的内容,但这一步存在一定的漏洞,建议在生产环境中谨慎使用。

  • 总的来说,这是一个典型的Web应用安全练习页面,通过对输入的严格限制和白名单管理,确保了用户输入的安全性,防止了恶意输入导致的潜在危害。

    如果需要进一步改进,可以考虑增加更多的安全措施,比如对输入内容进行加密或解密、使用防CSRF Token等,以提高整体安全性。

    转载地址:http://wlouk.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现特征脸算法(附完整源码)
    查看>>
    Objective-C实现状态模式(附完整源码)
    查看>>
    Objective-C实现狄克斯特拉算法(附完整源码)
    查看>>
    Objective-C实现狄克斯特拉算法(附完整源码)
    查看>>
    Objective-C实现猜数字游戏(附完整源码)
    查看>>
    Objective-C实现猜数字算法(附完整源码)
    查看>>
    Objective-C实现猴子爬山算法(附完整源码)
    查看>>
    Objective-C实现环形缓冲区(附完整源码)
    查看>>
    Objective-C实现生产者和消费者问题(附完整源码)
    查看>>
    Objective-C实现生产者消费者问题(附完整源码)
    查看>>
    Objective-C实现生成 Mandelbrot 曼德勃罗集图像算法 (附完整源码)
    查看>>
    Objective-C实现生成崩溃dump文件 (附完整源码)
    查看>>
    Objective-C实现生成数组的所有不同排列算法(附完整源码)
    查看>>
    Objective-C实现生成正态分布数据(附完整源码)
    查看>>
    Objective-C实现生成随机高斯分布(附完整源码)
    查看>>
    Objective-C实现用 PIL 改变对比度算法(附完整源码)
    查看>>
    Objective-C实现用二维数组实现矩阵的转置(附完整源码)
    查看>>
    Objective-C实现用半正弦公式计算两个坐标之间的距离算法 (附完整源码)
    查看>>
    Objective-C实现用卡方解密凯撒算法(附完整源码)
    查看>>
    Objective-C实现用蒙特卡洛方法计算圆周率PI算法(附完整源码)
    查看>>