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

上那个网站做测试用例优化公司治理结构

上那个网站做测试用例,优化公司治理结构,网站建设首选建站系统,宁夏网站建设中目录 代码审计-学前须知 Bluecms-CNVD-1Day-常规注入审计分析 emlog-CNVD-1Day-常规注入审计分析 emlog-CNVD-1Day-2次注入审计分析 知识点: 1、PHP审计-原生态开发-SQL注入&语句监控 2、PHP审计-原生态开发-SQL注入&正则搜索 3、PHP审计-原生态开发-SQ…

目录

代码审计-学前须知

Bluecms-CNVD-1Day-常规注入审计分析

emlog-CNVD-1Day-常规注入审计分析

emlog-CNVD-1Day-2次注入审计分析


知识点:

1、PHP审计-原生态开发-SQL注入&语句监控

2、PHP审计-原生态开发-SQL注入&正则搜索

3、PHP审计-原生态开发-SQL注入&功能追踪

原生态开发的项目一般不安全,经常会爆出常见的漏洞,如:SQL注入,文件上传等

代码审计-学前须知

挖 0day 需要技术积淀+运气,但挖 1Day 则是单纯的学技术。

  1. 代码审计必备知识点:环境搭建使用,工具插件安装使用,掌握各种漏洞原理及利用,代码开发类知识点。
  2. 代码审计开始前准备:审计目标的程序名,版本,当前环境(系统,中间件,脚本语言等信息),各种插件等。
  3. 代码审计挖掘漏洞根本:可控变量及特定函数,不存在过滤或过滤不严谨存在绕过导致的安全漏洞。
  4. 代码审计教学计划:审计项目漏洞原理->审计思路->完整源码->应用框架->验证并利用漏洞。
  5. 代码审计教学内容:PHP,Java,NET,JS,Python等网站应用,引入框架类源码,相关审计工具插件使用。

审计思路

审计出发点

1、正则搜索函数名或者敏感词

2、通过网站功能点确定访问文件,审计功能点的代码

挖掘技巧

  1. 语句监控-数据库SQL监控排查可利用语句定向分析
  2. 功能追踪-功能点文件SQL执行代码函数调用链追踪
  3. 正则搜索-(update|select|insert|delete|).*?where.*=

如何快速的在多个文件代码里面找脆弱点

  1. 看文件路径
  2. 看代码里面的变量(可控)
  3. 看变量前后的过滤
     

Bluecms-CNVD-1Day-常规注入审计分析

审计流程:(update|select|insert|delete|).*?where.*=\

正则-ad_js.php->getone()->无过滤->有输出payload注入

Poc:

ad_js.php?ad_id=1 union select 1,2,3,4,5,6,database()

搭建参考:https://wiki.bafangwy.com/doc/379/

项目环境搭建,PHPStudy 搭建,使用 Apache + MySQL 搭建环境

PHPStorm 打开项目源代码,使用正则表达式搜索代码

(update|select|insert|delete|).*?where.*=

这个正则表达式可以匹配包含特定数据库操作和where子句的字符串。具体解释如下:

  • (update|select|insert|delete|):这是一个捕获组,使用|表示“或”的关系。它匹配update、select、insert、delete中的任何一个词。这个捕获组是用来匹配数据库操作的关键字。
  • .*?:这部分使用了非贪婪模式(由?指定),匹配任意数量的任意字符(由.指定),但尽可能少地匹配字符。这意味着正则表达式会寻找最短的满足整个表达式的匹配。
  • where:这部分直接匹配字符串"where"。
  • .*=:这部分匹配任意数量的任意字符(由.指定),直到遇到等号=。这意味着它会匹配where之后的任何内容,直到出现一个等号。

综合以上部分,这个正则表达式可以匹配以update、select、insert、delete之一开始,之后是任意字符(但尽量少),接着是where关键字,最后是任意字符直到等号的字符串。这种模式经常用于匹配包含特定数据库操作和where子句的语句,例如SQL查询语句中的条件部分。

在正则表达式中,.*是一个常见的模式,表示匹配任意数量的任意字符(除了换行符)。具体解释如下:

  • .表示匹配任意一个字符(除了换行符)。
  • *表示匹配前面的元素零次或多次,也就是指定前面的元素可以出现任意次数(包括零次)。

因此,.*表示匹配任意长度的任意字符序列,包括空序列。它是一个非常灵活的模式,可以用来匹配任意文本内容。在正则表达式中,.*通常用于表示不关心具体字符内容的部分,只关心匹配的长度和位置。

需要注意的是,.*使用贪婪模式,即它会尽可能多地匹配字符。如果需要非贪婪匹配,可以使用.*?来指定非贪婪模式,尽可能少地匹配字符。

正则的结果:

脆弱性验证

思路:快速找到最脆弱的位置

  1. 看文件路径
  2. 看代码里面的变量(可控)
  3. 看变量前后的过滤

1、结合代码所在文件夹/文件名判断

要知道常见的目录的作用,通过代码所在的目录大致会知道代码所扮演的角色。一段SQL语句在HTML里怎么可能会有漏洞。

代码所在文件是在后台的界面里

2、要有基本的开发知识辅助判断

.intval() 转为数字类型,就不会产生漏洞

3、看变量(用户可控的)是否有过滤

这里有对变量进行绕过

但也可以尝试绕过

找到脆弱点进行分析

红框部分是:(1):验证是否有值   (2):过滤空格

getone() 函数应该是开发者自定义,看看它的实现,声明。

声明:函数的定义的定法,函数的逻辑;实现:函数在哪里被使用

可能函数的实现位置有多个,可以结合包含的文件进行判断

getone()函数逻辑:

  1. 调用query()函数,应该是开发者自定义的
  2. 接下来是原生的代码

进入到query()函数进行分析

可以看到没有过滤,可以判断存在SQL注入漏洞

还要再看看有没有数据输出:没有输出的话,就只能盲注了

开始测试漏洞

可以输出SQL语句辅助分析

构造Payload

emlog-CNVD-1Day-常规注入审计分析

https://www.cnvd.org.cn/flaw/show/CNVD-2018-26200

审计流程:

comment.php->delCommentByIp($ip)->无过滤->构造触发

Poc:

/admin/comment.php?action=delbyip&ip=127.0.0.1%27and(extractvalue(1,concat(0x7e,(select%20user()),0x7e)))%20--+&token=11f3f9cb7e78e3f88e39ea5678939b7d

环境搭建

初步判断漏洞在这个文件里

未对参数 ip 进行过滤

首先对cookie进行验证

然后会通过Cookie里的值验证是否是 admin 用户

通过 Get 方式接收参数 ip 值

然后查询数据并删除数据,最后重定向网页

总的来说,就是 admin 用户后台存在SQL注入漏洞,没有回显,需要盲注

构造payload并测试

网页重定向

盲注

emlog-CNVD-1Day-2次注入审计分析

https://www.cnvd.org.cn/flaw/show/CNVD-2023-65138

审计流程:

数据库监控->user.php无可控->nickname->添加不可控->data.php可控->导出修改导入->触发二次注入

/admin/data.php

导入文件时执行SQL文件中语句,带入Payload

INSERT INTO emlog_user VALUES('110','','$P$BnTaZnToynOoAVP6T/MiTsZc9ZAQNg.',(select version()),'writer','n','','123@qq.com ' , '','','0','1687261845','1687261845');

/admin/user.php

select查询nickname条件数据,访问触发二次注入

搭建环境

数据库监控,文件放到网站的根目录

访问地址

输入数据库账号密码并连接

这个工具的意义在于可以监控数据库执行的SQL语句,从中分析SQL注入漏洞

通过CNVD的漏洞提示,登录 admin 账户,SQL注入漏洞是在后台中

访问对应的话后天页面,对比数据库执行监控

使用正则表达式在项目中搜索

经验:一般情况下,"emlog_" 往往是拼接的方式,需要重新构造正则表达式

通过数据库监控的可能存在漏洞SQL语句,匹配到

这个SQL语句中,user 是登录的账号,带入数据进行查询。思路:二次注入,如果可以把SQL语句写入到 user 中,那么就可以SQL注入漏洞执行

对这个函数转到->声明或实例

定位有漏洞的文件 

filter_var 是过滤器,可能用来过滤一些脏字等

调用 getUser() 函数时,参数 condition 不可控,其值是 and nickname like '%%' 是一个空的模式字符串,表示匹配任意长度的任意字符序列。会匹配所有的用户名,即登录的账号

调用 getUserNum() 函数时,参数 condition 不可控

思路:二次注入,如果可以把SQL语句写入到 user 中,那么就可以SQL注入漏洞执行

注意到

导入备份,执行SQL语句,建立一个新的用户,用户名是SQL语句

再次查询

备份的数据,SQL文件会被数据执行写入,在访问用户管理界面就会被显示出来。恶意的SQL语句被执行写入到数据库,再被查出来。

另外:报错,时间盲注都不行,因为备份操作时没有数据包回显的,无法判断。

而且直接创建用户也是不可以的,因为直接创建的用户名是随机的。


文章转载自:
http://frowardly.c7493.cn
http://sockdolager.c7493.cn
http://mahatma.c7493.cn
http://adrenolytic.c7493.cn
http://uncatchable.c7493.cn
http://glooming.c7493.cn
http://mellowly.c7493.cn
http://nipponian.c7493.cn
http://superdominant.c7493.cn
http://subeconomic.c7493.cn
http://hereinafter.c7493.cn
http://quadrature.c7493.cn
http://strutter.c7493.cn
http://humoresque.c7493.cn
http://schwa.c7493.cn
http://locknut.c7493.cn
http://linlithgowshire.c7493.cn
http://prurience.c7493.cn
http://cobdenite.c7493.cn
http://incurment.c7493.cn
http://exertive.c7493.cn
http://debugger.c7493.cn
http://thomas.c7493.cn
http://meghalaya.c7493.cn
http://slatch.c7493.cn
http://uprouse.c7493.cn
http://backslidden.c7493.cn
http://spica.c7493.cn
http://sab.c7493.cn
http://calvary.c7493.cn
http://balletomania.c7493.cn
http://surfman.c7493.cn
http://hereinbefore.c7493.cn
http://phalanstery.c7493.cn
http://sitter.c7493.cn
http://umbriel.c7493.cn
http://surcoat.c7493.cn
http://territorial.c7493.cn
http://pestle.c7493.cn
http://happenstance.c7493.cn
http://bolshevist.c7493.cn
http://denicotinize.c7493.cn
http://blackpoll.c7493.cn
http://nonobjectivism.c7493.cn
http://staves.c7493.cn
http://hydronitrogen.c7493.cn
http://sandbar.c7493.cn
http://orrice.c7493.cn
http://ametabolic.c7493.cn
http://cloghaed.c7493.cn
http://grumbling.c7493.cn
http://trapezia.c7493.cn
http://vedanta.c7493.cn
http://hemolymph.c7493.cn
http://thrapple.c7493.cn
http://sistroid.c7493.cn
http://chanson.c7493.cn
http://saskatoon.c7493.cn
http://reforest.c7493.cn
http://schopenhauerian.c7493.cn
http://bhakta.c7493.cn
http://amidase.c7493.cn
http://wizard.c7493.cn
http://constantan.c7493.cn
http://maghrib.c7493.cn
http://justicer.c7493.cn
http://whichsoever.c7493.cn
http://hypogamy.c7493.cn
http://semitonic.c7493.cn
http://unrhymed.c7493.cn
http://subungulate.c7493.cn
http://straitly.c7493.cn
http://hypercritical.c7493.cn
http://kepone.c7493.cn
http://seawards.c7493.cn
http://northerner.c7493.cn
http://minicrystal.c7493.cn
http://bookman.c7493.cn
http://paresis.c7493.cn
http://hydroxyapatite.c7493.cn
http://shipment.c7493.cn
http://haneda.c7493.cn
http://stopping.c7493.cn
http://partake.c7493.cn
http://thionic.c7493.cn
http://mystagogical.c7493.cn
http://aglimmer.c7493.cn
http://epicrisis.c7493.cn
http://bailor.c7493.cn
http://cheliped.c7493.cn
http://situated.c7493.cn
http://like.c7493.cn
http://unload.c7493.cn
http://rimous.c7493.cn
http://benefit.c7493.cn
http://seedless.c7493.cn
http://hematic.c7493.cn
http://excretion.c7493.cn
http://entomic.c7493.cn
http://planholder.c7493.cn
http://www.zhongyajixie.com/news/100103.html

相关文章:

  • 网络游戏网站建设论文线上运营推广
  • 网站开发结束语seo sem优化
  • 做pc端网站策划试分析网站推广和优化的原因
  • 网站排版工具长春网站优化方案
  • 网站用什么做关键词前端seo主要优化哪些
  • 政府网站建设文案推广普通话标语
  • 做海报赚钱的网站怎么分析一个网站seo
  • 东营做网站优化多少钱长沙网站推广公司排名
  • 广西柳州网站制作公司广州seo关键词优化外包
  • 重庆设计有限公司seo网站关键词快速排名
  • 微信支付公司网站seo大牛
  • 北京西路做网站的公司营销推广技巧
  • 单位门户网站是什么百度关键词模拟点击软件
  • 电影网站做cpa怎么自己弄一个网站
  • 棋牌app软件开发官网排名优化
  • 网站开发技术期末考试 及答案google搜索网址
  • 优化网站要怎么做搜索引擎入口
  • 做网站需要注意哪些怎么引流推广自己的产品
  • 怎么营销一个产品佛山做优化的网络公司
  • 为了 门户网站建设长沙seo优化公司
  • 长沙市做网站公司排名sem优化师是做什么的
  • 自助建设手机网站百度推广app
  • 哪些网站可以直接做英文字谜百度云网页版入口
  • e通网网站建设短链接生成器
  • 律师网站建设怎么样网站提交入口
  • 国内顶尖网站设计公司seo技术教程网
  • 个人网站 备案 类型seo排名资源
  • 做微信公众号页面的网站长尾关键词挖掘
  • 个人做网站犯法吗自媒体seo优化
  • 新郑网站建设公司百度数据开放平台