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

2017网站建设有市场吗制作一个网站大概要多少钱

2017网站建设有市场吗,制作一个网站大概要多少钱,定制公司官网,北京市住房城乡建设行业从业人员考务网站文章目录 一、CSRF概述二、low2.1 通关思路2.2 源码分析 三、medium3.1 通关思路3.2 源码分析 四、high4.1 通关思路4.2 源码分析 五、impossible 一、CSRF概述 CSRF全称为跨站请求伪造#xff08;Cross-site request forgery#xff09;#xff0c;是一种网络攻击方式… 文章目录 一、CSRF概述二、low2.1 通关思路2.2 源码分析 三、medium3.1 通关思路3.2 源码分析 四、high4.1 通关思路4.2 源码分析 五、impossible 一、CSRF概述 CSRF全称为跨站请求伪造Cross-site request forgery是一种网络攻击方式也被称为 one-click attack 或者 session riding。CSRF攻击利用网站对于用户网页浏览器的信任挟持用户当前已登陆的Web应用程序去执行并非用户本意的操作。下图是CSRF的攻击原理 CSRF与XSS的区别 XSS是通过修改页面Javascript等代码后发给用户从而实现盗取cookie信息之后利用cookie进行登陆网站等操作。非法操作是黑客。CSRF并没有盗取cookie信息而是通过用户直接利用cookie进行操作。非法操作并不是黑客而是用户本身。 二、low 2.1 通关思路 1首先确定我们的用户名和密码分别为admin和admin。 2按照提示修改密码抓取修改密码时浏览器所发的数据包 2选择Engagement tools点击CSRF Poc最后会生成一段payload。 该payload就是一个特定的网站一旦用户访问这个网站该网站就会给原来改密码的服务端发送改密码请求。至于密码改成什么样完全是由这个伪造的网站决定。 得到网站链接http://burpsuite/show/3/tvpt0va0g5xddv4nytmm71z0p7uhhh2a。 3现在可以关闭burp的拦截功能只是不抓包但是数据包还是先流向burp然后在同一个1浏览器访问刚刚伪造的链接。发现密码已被修改 刚刚这样操作思路就是参考CSRF的原理 2.2 源码分析 ?phpif( isset( $_GET[ Change ] ) ) {// Get input$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Do the passwords match?if( $pass_new $pass_conf ) {// They do!$pass_new mysql_real_escape_string( $pass_new ); //转义在 SQL 语句中使用的字符串中的特殊字符(\x00、\n、\r、\、、、\x1a)$pass_new md5( $pass_new ); //使用MD5对密码进行加密// Update the database$insert UPDATE users SET password $pass_new WHERE user . dvwaCurrentUser() . ;;$result mysql_query( $insert ) or die( pre . mysql_error() . /pre );//mysql_query()查询成功返回True否则返回False。// Feedback for the userecho prePassword Changed./pre;}else {// Issue with passwords matchingecho prePasswords did not match./pre;}mysql_close(); }?分析服务器收到修改密码的请求后会检查参数password_new与password_conf是否相同如果相同就会修改密码并没有任何的防CSRF机制。 三、medium 3.1 通关思路 1首先确定我们的用户名和密码分别为admin和admin。 2同样使用插件生成CSRF POC。 3在同一个浏览器上访问生成的链接抓包修改renferer值为http://192.168.92.1:32769/vulnerabilities/csrf/ 4重新登陆发现密码已被修改。 注这里绕过referer值是通过burp实际情况下被害者点击链接后按照以上方法攻击方是抓不到被害者的数据包的。还可以在伪造的服务端重新设置referer值来绕过referer检测。 3.2 源码分析 ?phpif( isset( $_GET[ Change ] ) ) {// Checks to see where the request came from//eregi()在一个字符串搜索指定的模式的字符串。//$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。//$_SERVER[SERVER_NAME] 服务器主机的名称。//$_SERVER[HTTP_REFERER] :链接到当前页面的前一页面的 URL 地址if( eregi( $_SERVER[ SERVER_NAME ], $_SERVER[ HTTP_REFERER ] ) ) {// Get input$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Do the passwords match?if( $pass_new $pass_conf ) {// They do!$pass_new mysql_real_escape_string( $pass_new );$pass_new md5( $pass_new );// Update the database$insert UPDATE users SET password $pass_new WHERE user . dvwaCurrentUser() . ;;$result mysql_query( $insert ) or die( pre . mysql_error() . /pre );// Feedback for the userecho prePassword Changed./pre;}else {// Issue with passwords matchingecho prePasswords did not match./pre;}}else {// Didnt come from a trusted sourceecho preThat request didnt look correct./pre;}mysql_close(); }? 分析代码检查了保留变量HTTP_REFERER http包头部的Referer字段的值表示来源地址是否包含SERVER_NAMEhttp包头部的 Host 字段表示要访问的主机名。针对这一过滤规则我们只要想办法绕过那么我们后面的代码和low级别的基本都一样了很容易实现CSRF攻击。 四、high 4.1 通关思路 使用CSRF Token Tracker插件来捕获每次服务端返回的token。 4.2 源码分析 ?phpif( isset( $_GET[ Change ] ) ) {// Check Anti-CSRF tokencheckToken( $_REQUEST[ user_token ], $_SESSION[ session_token ], index.php );// Get input$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Do the passwords match?if( $pass_new $pass_conf ) {// They do!$pass_new mysql_real_escape_string( $pass_new );$pass_new md5( $pass_new );// Update the database$insert UPDATE users SET password $pass_new WHERE user . dvwaCurrentUser() . ;;$result mysql_query( $insert ) or die( pre . mysql_error() . /pre );// Feedback for the userecho prePassword Changed./pre;}else {// Issue with passwords matchingecho prePasswords did not match./pre;}mysql_close(); }// Generate Anti-CSRF token generateSessionToken();? 分析High级别的代码增加了Anti-CSRF token机制用户每次访问改密页面时服务器会返回一个随机的token向服务器发起请求时需要提交token参数而服务器在收到请求时会优先检查token只有token正确才会处理客户端请求。 五、impossible ?phpif( isset( $_GET[ Change ] ) ) {// Check Anti-CSRF tokencheckToken( $_REQUEST[ user_token ], $_SESSION[ session_token ], index.php );// Get input$pass_curr $_GET[ password_current ];$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Sanitise current password input$pass_curr stripslashes( $pass_curr ); // 去除反斜杠$pass_curr mysql_real_escape_string( $pass_curr ); //转义一下字符\x00、\n、\r、\、、、\x1a$pass_curr md5( $pass_curr );// Check that the current password is correct$data $db-prepare( SELECT password FROM users WHERE user (:user) AND password (:password) LIMIT 1; );$data-bindParam( :user, dvwaCurrentUser(), PDO::PARAM_STR );$data-bindParam( :password, $pass_curr, PDO::PARAM_STR );$data-execute();// Do both new passwords match and does the current password match the user?if( ( $pass_new $pass_conf ) ( $data-rowCount() 1 ) ) {// It does!$pass_new stripslashes( $pass_new );$pass_new mysql_real_escape_string( $pass_new );$pass_new md5( $pass_new );// Update database with new password$data $db-prepare( UPDATE users SET password (:password) WHERE user (:user); );$data-bindParam( :password, $pass_new, PDO::PARAM_STR );$data-bindParam( :user, dvwaCurrentUser(), PDO::PARAM_STR );$data-execute();// Feedback for the userecho prePassword Changed./pre;}else {// Issue with passwords matchingecho prePasswords did not match or current password incorrect./pre;} }// Generate Anti-CSRF token generateSessionToken();? 分析 要求先输入密码再修改攻击者不知道原始密码的情况下是无法发起 CSRF 攻击的。加入了随机token使用PDO进行SQL语句查询避免直接将用户的传参拼接到SQL语句防止SQL注入。
http://wiki.neutronadmin.com/news/433606/

相关文章:

  • 图像放大网站宣传片制作费用
  • 比比西旅游网站建设wordpress标签显示图片
  • 织梦网站上传到服务器网站建设 互诺科技
  • 2016网站建设总结线上营销公司
  • 网站安全检测发生告警后做网站有前途
  • 营销型网站建设的好处wordpress head 优化
  • 制作网站视频教程快速网站开发课程
  • 基于html5的购物商城网站任何做网站
  • 张浦专业做网站做网站虚拟主机要多大
  • 怎么把做的网页放入网站寿光网站制作
  • 搭建直播网站需要怎么做网页布局有哪几种
  • 沈阳网站建设服务平台石家庄模板建站
  • 98建筑网站网络图片素材
  • 网站编程基础品牌建设助力乡村振兴
  • 上海平台网站建设报十大免费建站app
  • 如何建设html网站腾讯企点怎么解绑手机号
  • 网站 关键词库在本地用dedecms做好的网站如何上传到服务器?
  • 有可以免费建网站的吗成都市公共资源交易服务中心
  • 重庆网站维护公司做网站给不给源代码
  • 会建网站的人wordpress安装系统
  • 密云成都网站建设临汾建设局官方网站
  • 博客园网站开发dedecms免费模板
  • 闸北区网站建设网页设计jsp做网站好不好
  • 朝阳市营商环境建设监督局网站360网站排名优化
  • 重庆网站建设技术外包移动网站虚拟主机
  • 网站备案应该怎么做php网站开发都需要什么软件
  • oa网站建设网站建设怎么在图片上加字
  • 采购网站有哪些手机制作最简单钓鱼网站
  • dns网站卫士 收录软件技术培训机构
  • 用糖做的网站临沂网