当前位置: 首页 > news >正文

个人网站开发的环境北京营销推广网站建设

个人网站开发的环境,北京营销推广网站建设,58同城深圳网站建设,网站换了服务器验证域名是否在白名单中是编程时常用到的功能#xff0c;对安全性有要求的项目中都有该功能。常见的使用场景有登录后回跳#xff0c;跳转到外站时弹出安全提示等。知乎登录后回跳#xff1b;只要有登录的地方就需要用到来源回跳。我们在一个页面www.baidu.com 调用知乎的登…验证域名是否在白名单中是编程时常用到的功能对安全性有要求的项目中都有该功能。常见的使用场景有登录后回跳跳转到外站时弹出安全提示等。知乎登录后回跳只要有登录的地方就需要用到来源回跳。我们在一个页面www.baidu.com 调用知乎的登录框登录成功后知乎会回跳到 www.baidu.com 吗肯定不会。因为 www.baidu.com 不是知乎自己的域名。所以知乎在登录验证成功后会校验这个 Referer 参数(就是 www.baidu.com )。当 Referer 属于知乎或者腾讯(知乎被腾讯收购了)的域名才会跳转。跳转到外站时弹出安全提示在QQ邮箱中当我们点击邮件中的链接跳转到非腾讯系的网站时都会弹出提示框告诉用户你可能会跳到钓鱼网站。通过我的测试发现很多知名网站都存在『校验白名单』被绕过的问题。看起来很简单的功能稍不注意就会给自己埋下大坑。真实的情况比上文举例复杂的多,例如域名白名单需要支持所有多级域名需要支持端口号需要支持http,https,tcp,ftp等等。在踏过无数坑之后我通过正则完美的解决了如上所有问题希望大家不要再踩我踩过的坑。另外我建议通过我的测试方法测试你的代码是否安全。PHP版本12345678910111213141516171819202122232425262728293031323334353637function filterURL($url){$allowDomains [test.com, demo.com];foreach ($allowDomains as $val) {$val sprintf((%s), str_replace(., \., $val));}$domainStr sprintf((%s), join(|, $allowDomains));$pattern /^((http://)|(https://)|(//))?([0-9a-zA-Z\._:\-]*[\.])? . $domainStr. (:[0-9])?(/.*)?$/;if (preg_match($pattern, $url)) {return true;} else {return false;}}var_dump(filterURL(bb.comtest.com)); //truevar_dump(filterURL(test.combb.com)); //falsevar_dump(filterURL(//test.com)); //truevar_dump(filterURL(http://test.com)); //truevar_dump(filterURL(https://test.com)); //truevar_dump(filterURL(https://test.com:8080/aa.com)); // truevar_dump(filterURL(https://bC.com:N:Ctest.com)); //truevar_dump(filterURL(https://a.test.com:8080/aa.com)); // truevar_dump(filterURL(//bb:comtest.com/sss)); // truevar_dump(filterURL(//bb:cc.comtest.com)); // truevar_dump(filterURL(//bb:bb.comtest.com)); // truevar_dump(filterURL(http://test.com)); // truevar_dump(filterURL(https://:test.com)); //falsevar_dump(filterURL(https://aA.com?test.com)); //falsevar_dump(filterURL(https://aA.com#test.com)); //falsevar_dump(filterURL(https://aA.com\test.com)); //falsevar_dump(filterURL(javasCript:test.com)); // falsevar_dump(filterURL(http://abctest.com)); // falsevar_dump(filterURL(http://com:\test.com)); // falsevar_dump(filterURL(http://test.comaa.com)); // falsevar_dump(filterURL(https://test.com:aa.com)); // falseJavaScript版本1234567891011121314151617181920212223242526272829303132function filterURL(url){var allowDomains [test.com, demo.com];var domainStr , result [];for (i 0; i allowDomains.length; i) {allowDomains[i] ( allowDomains[i].replace(., \.) );}domainStr ( allowDomains.join(|) );regStr new RegExp(^((http://)|(https://)|(//))?([0-9a-zA-Z\._:\-]*[\.])? domainStr (:[0-9])?(/.*)?$);result url.match(regStr);return !!(result result[0]);}console.log(filterURL(bb.comtest.com)); //trueconsole.log(filterURL(test.combb.com)); //falseconsole.log(filterURL(//test.com)); //trueconsole.log(filterURL(http://test.com)); //trueconsole.log(filterURL(https://test.com)); //trueconsole.log(filterURL(https://test.com:8080/aa.com)); // trueconsole.log(filterURL(https://bC.com:N:Ctest.com)); //trueconsole.log(filterURL(https://a.test.com:8080/aa.com)); // trueconsole.log(filterURL(//bb:comtest.com/sss)); // trueconsole.log(filterURL(//bb:cc.comtest.com)); // trueconsole.log(filterURL(//bb:bb.comtest.com)); // trueconsole.log(filterURL(http://test.com)); // trueconsole.log(filterURL(https://:test.com)); //falseconsole.log(filterURL(https://aA.com?test.com)); //falseconsole.log(filterURL(https://aA.com#test.com)); //falseconsole.log(filterURL(https://aA.com\test.com)); //falseconsole.log(filterURL(javasCript:test.com)); // falseconsole.log(filterURL(http://abctest.com)); // falseconsole.log(filterURL(http://com:\test.com)); // falseconsole.log(filterURL(http://test.comaa.com)); // falseconsole.log(filterURL(https://test.com:aa.com)); // false有经验的程序员不难发现最核心的代码就是正则表达式所以其他语言能很好的移植。最后请牢记安全无小事编码需谨慎。
http://www.yutouwan.com/news/186318/

相关文章:

  • 需要锦州网站建设c# 网站开发实例教程
  • 怎么买域名建网站给网站做选题
  • 重庆触摸屏_电子商务网站建设网上找工程平台有哪些
  • 网站打开出现建设中定制网站与模板网站
  • 盗版系统网站怎么建立三星网上商城下载
  • 学习网站 现状wordpress错误代码403
  • 顺德企业网站制作百度竞价排名事件
  • 做报纸版式的网站江苏网站seo平台
  • 国内html网站欣赏有谁想做网站 优帮云
  • 5118网站查询做一份网站的步zou
  • 网站健设推广产品多少钱营销型网站的评价
  • 那里可以做PC28网站的品牌宣传的推广
  • 黄页网站推广qq群推广链接
  • 济南网站制作公司wordpress 极简主题
  • 凡科建设网站步骤免费的模板下载
  • postgresql做网站用什么环境什么网站做adsense好
  • 整个网站都在下雪特效怎么做Wordpress动图主题
  • 祁阳做网站哈尔滨网站制作公司
  • 招聘网站套餐视频号推广方法
  • 网站制作进度表营销推广型网站价格
  • 深圳网站建设开发哪家好怎么用网网站模板做网站
  • 网站搜索引擎优化案例茂名网站建设
  • 网站服务器指的是什么wordpress 乱版
  • 做网站怎么备份数据一个新的网站开发语言
  • 网站建设需要版块重庆门户网站开发报价
  • 网站没有做伪静态是什么样子设计公司网站设计
  • jsp网站怎么做邮箱验证码学做文案的网站
  • 网站后台可以做两个管理系统么怎么更改网站关键词
  • 网站关键字怎么做中小学网站建设
  • 福建省建设执业资格注册管理中心网站服务器做php网站