首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PHP跨站脚本攻击(XSS)漏洞修复思路(二)

    上一篇文章《PHP 跨站脚本攻击(XSS)漏洞修复方法(一)》写到了 360 修复 XSS 漏洞的插件并不完善的问题,那么这篇文章就来分享一下自己如何写代码修补这个漏洞。...一、完全过滤 问题①,我可以找到站内搜索和博客提交这 2 个开放入口的数据处理 php,然后对数据过滤即可。...所以可以用到 strip_tags()函数,具体运用如下: $keyword = strip_tags(addslashes(trim($_GET['query']))); 在数据外套上 strip_tags...从搜索结果可以看出,系统已自动过滤了后面的 iframe 恶意内容,问题得到解决。 因此,对于 XSS 漏洞的第一种修复方法就是使用 strip_tags 函数来完全过滤 html 内容。...二、代码转义 问题②,WordPress 的评论并不能如此暴力的过滤,因为很多用户确实是想提交一些 html 代码,来进行交流。

    1.6K50

    php 弱类型问题

    但由于 php 在定义变量时并不需要像 C++ 语言那样去定义其变量类型,因此在一些 CTF web 题目中,经常会碰到一些源码是 php 的题目,我们可以通过分析代码,结合 php 弱类型问题去尝试绕过...函数之 switch 问题 ---- ? 如果 switch 是数字类型的 case 的判断时,switch 会将参数转换为 int 类型。...总结 ---- 上面所述的 php 弱类型可能只是一部分,在打 CTF 过程中,可能更多,但问题都在于对函数的使用不够规范,对变量的类型没有完全校验(可使用内置的 settype, gettype 函数多校验或者规范...),这是强大的 php 语言引起的“不足”问题,而在企业使用 php 开发中一般不会涉及到这方面的漏洞问题,通常可能仅仅是判断不充分而导致的逻辑问题,希望大家可以共同补充探讨。...参考: php 弱类型总结: http://www.cnblogs.com/Mrsm1th/p/6745532.html 0e开头MD5 python生成脚本 PHP哈希弱类型: http://blog.csdn.net

    1.1K00

    lnmpa php升级脚本问题

    上篇说到wordpress把php和apache搞崩溃的问题,我看了一下php版本5.2.17有点老,遂升级,原来装的这一套是再lnmp.org上面下的,说实话licess和lnmp对于我们这种小白级的用户带来了太多方便...网上有很多教你直接拷贝这段代码在终端里面运行,各种一键傻瓜安装都是wget一个脚本然后直接chmod+x然后执行,先不说脚本作者水平如何的问题。...这个脚本放在什么地方,写了什么东西都是问题,即便作者不乱来,假设放这个脚本的地方被攻陷了,其他黑客修改了脚本,也能给你的系统带来不可估计的风险。...当然你不信就不用就是了,我使用1.0版本的lnmpa_upgrade_php脚本时候就出现了问题,先是脚本根据输入的版本号下载php源码包,然后configure和make,其中configure的命令行是写死在脚本里面的...,实际上随着php的变化有一些参数已经不适用了,例如说enable-safe-mode。

    73410

    php中常见编码问题

    PHP程序设计中中文编码问题曾经困扰很多人,导致这个问题的原因其实很简单,每个国家(或区域)都规定了计算机信息交换用的字符编码集,如美国的扩展 ASCII 码, 中国的 GB2312-80,日本的 JIS...当然这个函数只能在 php 页面内使用。   同样也留有一个问题,为什么前者就绝对起作用,而后者有时候就不行呢?这就是接下来要谈的Apache 的原因了。   ...4) php.ini 中的 default_charset 配置:   php.ini 中的 default_charset = "gb2312" 定义了 php 的默认语言字符集。...结束语   其实 php 开发中的中文编码并没有想像的那么复杂,虽然定位和解决问题没有定规,各种运行环境也各不尽然,但后面的原理是一样的。了解字符集的知识是解决字符问题的基础。...不过,随着中文字符集的变化,不仅仅是 php 编程,中文信息处理中的问题还是会存在一段时间的。

    1.2K20

    php 换行符问题

    php 换行符问题 背景 公司有个业务需要用户上传csv文件,里面的内容以逗号(,)分隔 ,然后每一行代表一条数据,业务代码读取数据根据业务规则入库。...有用户反馈,自己上传的csv文件“符合规范”,但上传后提示数据为空 问题定位 拿到用户的csv文件,用notepad++打开文件,发现换行符和期望的\r\n ,不一样,用户的csv文件换行符是\r,跟用户确认后...,明确用户用的mac电脑,因为mac和windows上换行符不一致到这该问题,业务代码是用php编写的,默认无法识别\r,把csv里面的内容当作一行来处理,导致业务报错 ?...解决 先紧急解决用户的问题 拿到用户的csv文件后,手动替换\r为\r\n,引导用户重新上传,解决问题先 修改业务代码,解决该问题,有两种方案 修改php.ini文件,打开**auto_detect_line_endings...参考资料 https://blog.csdn.net/qq_40395278/article/details/81199281 (推荐) https://www.php.net/manual/zh/filesystem.configuration.php

    3.8K20

    关于Simple_html_dom的小应用

    只有在线看的,作为一个准码农,所以甭废话了,咱得用代码解决问题对吧…… 1.工欲善其事必先利其器   首先你得有个工具用吧,别想我之前似得抓个网页,就写了好多的$pattern去挨个匹配标签,作为伪程序员那哪行啊...content);     //加空格 $content=preg_replace($pattern1," ",$content);   (7)当然少不了他了(去除html标签) $title=strip_tags...($title); $content=strip_tags($content);   (8)写入文件即可   (9)恭喜你,小说抓取成功。...3.主要用到的技术    (1)对php的熟练应用    (2)掌握正则表达式。    ...(3)主要是Simple_html_dom.php的使用    (4)还得注意php超时问题   当循环太多时会出现超时问题,建议不要修改配置文件

    75570
    领券