我非常喜欢搞IDOR漏洞,它通常被称为不安全的直接对象引用或是越权,一般来说它的发现手段相对简单,利用方式也不太难,但是对网站业务的危害影响却比较严重。 就我来说,我此前发现的一些高危漏洞大部份都属于IDOR漏洞范畴之内。今天我们就来谈谈如何发现更多的IDOR漏洞。 IDOR漏洞其实在越权(Broken Access Control)漏洞的范畴之内,也可以说是逻辑漏洞,或是访问控制漏洞,国内通常被称为越权漏洞。具体可点此参考。 conversation_id=SOME_RANDOM_ID 乍一看,其中的的会话ID(conversation_id)非常长,而且是随机的字母数字组合序列,但是之后我发现,可以使用用户ID号去获取属于每个用户对应的一个会话列表 比如,如果你发现了一个可以更改另外一个用户购物车列表的IDOR漏洞,实际来说,该IDOR漏洞危害并不高,充其量只会引起受害者的一些麻烦,但如果把它和self-XSS配合利用的话,在某个用户提交点,就能通过
今天分享一个web扫描工具——WPScan WPScan是一个专门扫描WordPress网站的漏洞发现工具,目前已经在很多系统中预安装: BackBox Linux 具体安装组件如下: apt-get install gcc git ruby ruby-dev libcurl4-openssl-dev make zlib1g-dev libxml2 libxml2- dev libxslt1-dev build-essential libgmp-dev 安装完组件后,可以通过命令ruby wpscan.rb --update 更新漏洞数据库 ? 暴力破解 ruby wpscan.rb --url [wordpress url] --wordlist [密码字典] --username [获取到的用户名] --threads [线程数] 扫描插件漏洞 可以看到红色叹号的即是漏洞的提醒,还会有参考的url,可以通过提供的参考来修复漏洞。
【原创】 作为安全行业的甲方(如互联网企业),经常会收到外部报告的漏洞或者发现安全事件,比如SQL注入、XSS、逻辑漏洞、APP缺陷等等。 那么,收到漏洞报告之后,应该如何处理,才能最大程度的降低风险呢? 在互联网企业,一般都建设有安全应急响应中心(SRC),负责跟外部白帽子或第三方漏洞报告平台接口,协调处理报告过来的漏洞。 风险定级与奖励 ---- 给报告漏洞的白帽子发放奖励,是互联网行业的通行做法(当然,白帽子也只能点到为止,不能有利用发现的漏洞进行进一步入侵、窃取数据等行为)。 针对严重的安全事件,还需要根据分析的结果(攻击路径、利用的漏洞等)执行关键路径切断,或者在关键路径上执行网络监控(运维及数据库端口、弱口令连接)以便第一时间发现风险。 SDL与上线前的风险处置 ---- 如果是在SDL执行过程中,安全人员发现了产品中的风险(或与标准规范的冲突项),该如何处理呢?
该篇Writeup讲述的是作者发现Google Tez网站的一个DOM based XSS漏洞,从而收获$3133.7奖励的经历,漏洞非常非常简单,我们一起来看看。 等其它工具去探测谷歌子域名信息,大致如下: 之后,我收集到了很多的谷歌在用子域名,有意思的是,当我访问其中的子域名https://tez.google.com/(现在已更名为Google Pay),我发现在其 但是有意思的是,我发现referrer_id的参数值会响应在https://tez.google.com/的页面中,如下: 于是,我顺手就往其参数值中构造插入了一个XSS Payload - 立马,我把该漏洞上报给了谷歌安全团队 ,之后,谷歌立即对该漏洞进行了分类并告知我漏洞等级和奖励赏金还需要等待评估。 按照谷歌漏洞奖励计划,我上报的漏洞符合以下“客户端代码执行”XSS部分的“谷歌一般应用”$3133.7奖励标准: 同时,我也被谷歌列入了漏洞名人堂的致谢名单: *参考来源:pethuraj,clouds
Capture the request using burpsuite. 2. Send the request to burp scanner. 3. Use SQLMAP to speed up the process. 2. Use subdomain enumeration tools on the domain. 2. You can use the same method described above in 2nd point. 4. Submit single quote character ' & look for errors. 2. Submit SQL specific query. 3.
golang、java、JavaScript、typescript、python)进行完整编译,并在此过程中把源码文件的所有相关信息(调用关系、语法语义、语法树)存在数据库中,然后编写代码查询该数据库来发现安全漏洞 CodeQL 本身包含两部分解析引擎 +SDK 解析引擎用来解析我们编写的规则,虽然不开源,但是可以直接在官网下载二进制文件直接使用 SDK完全开源,里面包含大部分现成的漏洞规则,也可以利用其编写自定义规则 that are visible to the toolchain, use 'codeql resolve qlpacks' and 'codeql resolve languages'. 2. 进行项目漏洞扫描 下载项目源码 比如现在要对xxl-job这个项目进行漏洞扫描 git clone https://gitee.com/xuxueli0323/xxl-job 创建数据库 进入目标代码目录 附 使用 VSCode 图形化工具发现还不如直接使用命令快捷、方便 创建数据库 codeql database create databaseName --source-root=D:/xxljob -
意大利电信公司TIM的漏洞研究部门Red Team Research (RTR) 发现了2个影响爱立信 OSS-RC 的新漏洞。TIM RTR已向爱立信报告了这些漏洞。 据悉,这2个漏洞均存在 18B 及更早版本的 OSS-RC 系统中,升级后的系统使用新的爱立信库浏览工具 ELEX可以规避掉类似漏洞。 TIM作为领先的零日漏洞研究公司,过去两年,TIM RTR实验室发现了60多个零日漏洞,其中4个漏洞CSSV 得分为 9.8。 自2001年以来向供应商报告的漏洞清单中,被列入美国国家漏洞数据库的数量有10个,TIM报道了其中2个。 例如要求正义黑客一旦发现没有记录的漏洞,必须立即报告给供应商,以免对公共信息系统造成威胁。
不久之前,安恒信息风暴中心安全研究员在Struts 2上发现了一枚远程代码执行漏洞,受影响版本Struts 2.0.0 – Struts 2.3.24.1,目前Apache官方已发布公告,该漏洞危险级别为高危 安恒信息风暴中心安全研究员nike.zheng在3月16日发现一个严重的远程代码执行漏洞(CVE-2016-0785),并于3月18日报告给Struts2官方,近日,安恒信息收到Struts2官方的确认和感谢 s2-029 Apache Struts2 标签远程代码执行分析 >>>> 标签介绍 Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,struts2的主题、模板都提供了很好的扩展性 >>>> 漏洞分析 s2-029没有漏洞细节,但通过分析源码已重现漏洞。 @java.lang.Runtime@getRuntime(),#a.exec(‘touch /tmp/dbapptest’),new java.lang.String(”)执行系统命令 >>>> 漏洞
一直关注QingScan,最近蜻蜓开放内测,第一时间抢先一步抢到了内测名额,使用后发现效果很赞,记录下我使用的过程。 ed8ceeac4eac28ce9434ba86fb06c51b [%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20220522235924.png] 1.3 查看节点连通 刷新浏览器发现节点已连通 [%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20220523000604.png] 2. 装备武器 2.1 挑选装备 访问路径:装备武器→添加装备。 已经选择好了所需要的武器,现在去添加目标,访问路径:点击目标管理→添加 [%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20220523005949.png] 3.2 查看结果 等待一会后,发现扫到漏洞了 工具dirmap、dismap、masscan、nmap、rad、sqlmap、xray都发现了漏洞。oneforall(子域名查询)因为我填的是ip,所以没有发现漏洞,还有些工具没扫描完。
Nday 实战系列文章中的一篇,目前知识星球已更新至 41 篇,目标 50 篇,欢迎加入知识星球查看更多原创内容,本月 12 日开启 2021 年度最后一期 SRC 实战训练营,欢迎参见,详情参见《SRC 漏洞批量自动化发现之武功秘籍 如何发现存在 Fastjson 漏洞的网站 从 fastjson 漏洞形成的原因看,是目标网站在解析 json 时,未对 json 内容进行验证,直接将 json 解析成 java 对象并执行,这就给了攻击者可乘之机 所以寻找存在 Fastjson 漏洞的方法,就是先找到参数中内容是 json 数据的接口,然后使用构造好的测试 payload 进行提交验证,检测原理跟 sql 注入差不多,首先找到参数提交的地方,然后再用 具体配置可参考官方配置文档: https://docs.xray.cool/#/configration/reverse 扫描结果如图 点击该结果,会有详情,及测试数据包: 利用 DNSLOG 验证漏洞 ,发现很多企业的存在漏洞,但是反弹 SHELL 都存在问题,猜测原因是目标系统的 java 版本比较高,无法触发远程加载恶意脚本并执行,均可以利用 dnslog 的方式验证成功。
开源Java SQL数据库H2含有远端程序执行(RCE)漏洞,即便目前还无法确认该漏洞的风险值,但有安全厂商建议尽快升级到最新2.0.206版 去年底爆发的Apache Log4j漏洞,让全球安全和数据库管理员至今仍忙得不可开交 ,安全厂商JFrog最近发现常用数据库H2,也有类似Log4Shell的远端程序执行(RCE)漏洞,呼吁用户立即升级到最新的2.0.206版本。 这家安全厂商去年12月在H2数据库控制台(console)发现到的漏洞(编号CVE-2021-42392),和Log4Shell(JNDI remote class loading)根本原因相同。 CVE-2021-42392漏洞出现在H2数据库多行代码,在未经过滤下将攻击者控制、伪造的URL,传送到控制台上的javax.naming.Context.lookup函数,允许加载远端程式,即Java 研究人员指出,如果本地区域网路(LAN)、甚至广域网路(WAN)上跑H2控制台的服务器有这漏洞的话,后果相当严重。
最近,我在参与一些漏洞众测项目,本文中我就来分享一个我发现的Facebook某服务器漏洞,该漏洞获得Facebook官方$5000美金奖励。 端倪 在我前期对Facebook网段199.201.65.0/24进行探测时发现,其中在IP 199.201.65.36 上部署有Sentry服务,其主机名为sentryagreements.thefacebook.com 发现 在对该Web应用进行分析过程中,页面上经常有一些莫名其妙的堆栈跟踪行为(stacktrace)跳出来。并且其用户密码重置功能貌似非常不稳定,老是会崩溃。 然后,我又把Sentry 应用的说明文档翻了一遍,发现system.secret-key是”一个用于会话验证的安全密钥,如果该密钥受到破坏或窃取,则需要对它重新生成,否则用户会话存在被劫持的可能。 漏洞上报进程 2018.7.30 00:00 漏洞初报 2018.7.30 15:25 Facebook进行漏洞分类并将Sentry服务系统下线 2018.8.9 18:10 补丁修复 2018.8.9
本文讲述作者通过Github探测手段(Github Recon)发现了特斯拉某服务端的用户名密码凭据,通过该凭据可以成功对特斯拉后台API接口发起请求,实现敏感数据返回。 漏洞最终获得了特斯拉官方$5000美金奖励。一起来围观围观。 漏洞发现 由于我对服务台和管理员角色比较熟悉,但此前并未涉猎过多的网络安全,对于安全行业,我还在努力研究。 这下就有了: 它是一个特斯拉的代码库,而且竟然是3天前更新过的代码: 从以上代码可以看出: 1、它是与云端IT业务专业管理工具ServiceNow进行交互的代码,我对ServiceNow比较熟悉; 2、 漏洞上报后,特斯拉在3小时后就立马删除了该代码库,之后特斯拉在API接口请求中加入了对ServiceNow实例请求的MFA验证手段。 经验总结 要擅于应用搜索语法,上述的特斯拉代码库曝露在网已经快3年多了,而其中的更新代码恰巧就被我发现了; 自动化工具不能发现所有东西,有时候需要亲自动动手; 任何要都可以发现漏洞,有些漏洞需要的漏洞技术并不是太多
对于部署了FireEye设备的网络,一个被动监控接口存在的漏洞利用绝对是恶梦。 在本文中我们将讨论Project Zero发现的第666个漏洞:FireEye设备可通过被动监控接口进行利用的漏洞。 FireEye已经发布了针对该漏洞的补丁,请用户立即应用该补丁! [1]FireEye设备可以在IPS模式下进行配置,这么做可以修改监控流量 [2]该问题刚刚好是Project Zero发现的第666个漏洞 常见问答 Q:如何检查是否我的FireEye设备存在该漏洞? A:通常,设备的安全版本为427.334或更高那么该漏洞已经被修复,FireEye官方发布的该漏洞相关信息请查看原文链接。 Q:哪些FireEye产品受此漏洞影响? 该漏洞会导致机密数据的泄漏,篡改流量。 请根据问答部分,检测下设备是否存在该漏洞,如存在请及时修补。
最新更新,svg-captcha即将发布3.0,修复该漏洞 详情issue:https://github.com/produck/sv... ---- 以下原文 可能有部分nodejs开发者因为安装图形库很麻烦 然而它最大的一个缺点就是,太容易被破解了,是我刚破解的(其实是我在2019年,第一次知道它后没多久,无意中发现破解方法的,直到现在才有空提交代码) 破解指的是,很容易被机器识别,识别率达100%,并且不需要任何机器学习有关的知识 发现流程 刚接触svg-captcha的时候就在想,它到底为防止识别做了哪些操作,然后仔细对比相同字母,发现每次生成相同字母的轮廓,不一致的地方相当多: image.png 这样看来,即使是相同字母 26个字母+10个数字,结果如下 { '0': { '2382': 10819, '2580': 3769 }, '1': { '998': 10861, '1081': 3621 }, '2' 根据以上的统计,有15个字母的path长度存在相同的情况,所以用这个方法的准确率应该不到50% 继续看看那些有相同path长度的字母,发现它们还有很大的不同,比如I和l都有相同的path长度(986),
本文作者:少年英雄宋人头(Ms08067实验室成员) 什么是逻辑漏洞 逻辑漏洞产生是因为编写代码时人的思维逻辑产生的不足导致的应用程序在逻辑上的缺陷,与传统的WEB漏洞相比,逻辑漏洞无法通过漏洞扫描进行识别 实战案例--某大型网站的验证绕过 在对某大型网站进行测试的过程,发现存在一个修改密码的页面,而且这个页面的格式有种似曾相识的感觉(之前提交过一个类似的密码重置漏洞)第一反应是,这个位置是不是存在类似的漏洞
一、服务发现架构 服务发现架构通常具有下面 4 个概念: 服务注册:服务如何使用服务发现代理进行注册? 服务地址的客户端查找:服务客户端查找服务信息的方法是什么? 通常服务实例都只向一个服务发现实例注册,服务发现实例之间再通过数据传输,让每个服务实例注册到所有的服务发现实例中。 服务在向服务发现实例注册后,这个服务就能被服务消费者调用了。 (2)每次调用该服务时,服务消费者从缓存中取出一个服务实例的位置,通常这个'取出'使用简单的复制均衡算法,如“轮询”,“随机",以确保服务调用分布在所有实例之间。 服务中心管理页面:http://localhost:8761 2、将服务注册到服务中心 这里我们编写一个新服务注册到服务中心,organizationservice:组织服务。 getOrganizationInfo(@PathVariable("orgId") String orgId) { Map<String, String> data = new HashMap<>(2)
S2-005漏洞 S2-005是由于官方在修补S2-003不全面导致绕过补丁造成的。 S2-013漏洞 漏洞触发: 由于官方没有发补丁,所以最新版本的struts2还是有漏洞的,可以下载最新:Apache Struts 2.3.14 GA的示例应用。 请勿任意尝试,漏洞利用代码会让对方站点挂掉 S2-032漏洞 此次漏洞存在于struts2的动态方法引用功能。 S2-037漏洞 S2-037的漏洞利用思路建立在s2-033的基础只上,还是对method没有进行过滤导致的,漏洞影响Struts 2.3.20 – Struts 2.3.28.1版本,使用到REST Poc: image.png S2-045漏洞 漏洞分析 Apache Struts2存在远程代码执行漏洞,攻击者可以将恶意代码通过http报文头部的Content-Type字段传递给存在漏洞的服务器
相信大家最近都看到了两个新闻,一个是 Log4j2 的漏洞事件,一个是阿里云被工信部暂停合作六个月。 这两个事件的关联是因为工信部发布通告说阿里云在合作期间未及时告知合作伙伴 Log4j2 的漏洞,没有有效支撑工信部开展网络安全威胁和漏洞管理。 发现漏洞的员工绩效应该是 3.75 还是 3.25?2. 阿里云的做法是否有问题。 针对这件事情有网友说到下面几种情况,很值得品一品: 如果说发现漏洞先报告国家,再通知 Apache,这算屁股红; 如果说发现漏洞先报告 Apache 再马上告诉国家,这算技术牛,懂大局。 如果说发现漏洞先报告 Apache 再规定时间内告诉国家,这算正常商业,无可厚非。 如果说发现漏洞先报告 Apache 然后就不管,等 Apache 公布漏洞后,国家才知道,这就有意思了。
const char **envp) { size_t v3; // rbx@4 size_t v4; // rax@5 char s[8]; // [sp+10h] [bp-30h]@2 int i; // [sp+2Ch] [bp-14h]@2 if ( argc <= 2 ) { func3(*argv, argv, envp); } else { strncmp(argv[1], s, v4) ) func(argv[2]); else func("Wrong password!") dest; // [sp+10h] [bp-30h]@1 strcpy(&dest, a1); return printf("Your Message: %s\n", &dest); } 可以看到漏洞点是在 构造命令行参数,创建一个entry_state和simulation_manager 从simulation_manager中找到满足当前执行到strcpy,而且strcpy的源地址真是我们输入的argv[2]