明文存密码?Twitter 程序员可能要被祭天了

Twitter发现其内部系统存在安全漏洞,可能导致用户密码以明文形式存储。尽管未发现密码被盗,但公司仍建议所有用户修改密码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(点击上方蓝字,快速关注我们)


转自:腾讯科技


640?wx_fmt=jpeg


据外媒报道,在发现内部计算机系统存在安全漏洞,会把部分用户的密码存储在空白文本中后,Twitter 周四敦促全球超过 3.3 亿用户修改密码。


Twitter表示,该公司已修复了这一漏洞,而且内部调查未发现这些密码被黑客偷盗,或者是被公司内部人士误用。不过即便是如此,“出于足够的谨慎,”Twitter还是敦促所有用户考虑修改密码。


640?wx_fmt=jpeg


Twitter在周四发布的官方博客中并未透露究竟有多少用户密码受到影响。不过消息人士透露,受影响的用户密码数量“非常巨大”,而且此问题出现已有数月时间。该消息还称,Twitter在几周之前发现了这一漏洞,并向部分监管机构报告了此事。


Twitter发现内部系统出现的安全漏洞能够存储用户密码之时,正值Equifax、Facebook和Uber等一系列安全事件发生之后,全球立法者和监管部门开始对企业存储和保护用户数据进行详查之时。


欧盟的新隐私法规《通用数据保护条例》(GDPR)将于本月底生效。该条例要求服务商必须征得用户同意,才能使用用户的个人数据。也就是说,科技公司在欧洲必须非常明确地提醒用户针对重要数据进行权限设置,并且默认隐私设置必须是共享内容最小化的选项(默认情况是不共享数据)。如果违反该条例,企业将会面临重罚。


Twitter在博客中表示:“因为这个漏洞,在完成‘哈希过程’(the hashing process)之前,用户密码会被存储在公司计算机系统的一个内部日志中。我们自己发现了这一漏洞。在已删除用户密码的同时,正部署措施预防这一漏洞再度出现。”Twitter在博客中还表示:“我们对发生的这一切感到非常抱歉。”按照Twitter的说法,用户在输入密码登陆Twitter时,这些密码先会通过加密被随机组合的数字和字母组替代。但是因为这一漏洞,原始密码都被存储了下来。


Twitter建议用户采取预防措施,确保他们的帐户是安全的,包括更改密码,并启用Twitter的双重身份验证服务,以防止帐户被黑客劫持。


Twitter股价周四在纽交所常规交易中上涨0.12美元,涨幅为0.39%,报收于30.67美元。在随后的盘后交易中,受此消息影响,Twitter股价下跌0.16美元,跌幅为0.52%,报收于30.51美元。过去52周,Twitter最低股价为15.67美元,最高股价为36.80美元。在连续两个季度实现盈利之后,Twitter股价在今年的累计涨幅已达到27%,表现强于标准普尔500指数同期1.4%的跌幅。




觉得本文有帮助?请分享给更多人

关注「程序员的那些事」,提高编程技能

640?wx_fmt=png

<think>好的,我现在要回答用户的问题:“用sqlplus / as sysdba 登录后,可以用查看系统用户的密码吗?”首先,我需要确认Oracle数据库中的用户密码存储机制。 根据我了解,Oracle数据库默认不会以文存储用户密码。通常,密码会被哈希处理,并可能加上盐值(salt)以增强安全性。这些哈希值存储在系统表如SYS.USER$中。所以,用户直接查看密码是不可能的。 接下来,用户可能想知道是否有特殊情况或配置允许密码存储。例如,Oracle是否提供某些参数或功能来启用文存储。我需要检查是否有像explicit这样的参数,或者是否有版本差异导致行为不同。例如,在旧版本中可能存在不同的处理方式,但主流版本默认都是哈希存储。 此外,需要考虑是否有其他方法可以获取密码。例如,如果数据库配置了密码验证函数,可能在函数日志中临时记录密码,但这属于不安全配置,不推荐。另外,如果启用了审计或跟踪功能,可能在日志中捕获到密码,但这同样需要特定设置,并且存在安全风险。 用户可能还想知道如何重置密码,如果无法获取文。需要说可以使用ALTER USER命令修改密码,而不需要知道原密码,尤其是当以SYSDBA身份登录时拥有足够权限。 最后,要提醒用户安全最佳实践,比如避免需要密码的情况,使用强密码策略,定期更换密码,并限制SYSDBA权限的访问。同时,如果确实需要验证用户身份,应该通过其他安全的方式,而不是试图获取密码。 总结回答的结构:先确回答不能查看文,解释存储机制,讨论可能的例外情况,提供替代方案(重置密码),以及安全建议。</think>在Oracle数据库中,**无法通过SQL*Plus或其他标准方式直接查看系统用户的密码**。以下是详细的解释和背景信息: --- ### 1. **Oracle密码存储机制** - **哈希加密**:Oracle默认将用户密码进行**单向哈希加密**(如SHA-1、SHA-2等),并将结果存储在系统表`SYS.USER$`的`PASSWORD`列(旧版本)或`SPARE4`列(11g及更高版本)中。哈希过程不可逆,因此无法通过查询直接还原文。 - **盐值(Salt)**:现代Oracle版本还会在哈希时加入随机盐值,进一步防止彩虹表攻击。 --- ### 2. **为何无法获取密码?** - **安全设计**:Oracle的密码存储机制符合安全规范,密码在创建或修改后立即被哈希处理,数据库内部不会保留文副本。 - **系统表限制**:即使以`SYSDBA`身份登录,也无法通过查询`DBA_USERS`或`SYS.USER$`获取密码。 --- ### 3. **特殊情况与例外** - **历史版本的漏洞**:极少数旧版本(如Oracle 10g)在某些配置下可能存在漏洞,但官方已修复且不推荐依赖此类方法。 - **密码验证函数**:如果自定义了密码验证函数(`PASSWORD_VERIFY_FUNCTION`),可能在函数逻辑中临时记录密码,但这属于不安全配置,应避免使用。 --- ### 4. **替代方案:如何重置密码?** 若需管理用户密码,可以**直接重置密码**而无需知道原密码: ```sql ALTER USER <用户名> IDENTIFIED BY <新密码>; ``` 以`SYSDBA`身份执行此命令时,无需原密码即可修改任意用户密码。 --- ### 5. **安全建议** - **避免文需求**:系统设计应避免依赖密码,改用身份验证代理(如Kerberos)或连接池管理。 - **审计与监控**:启用数据库审计功能(如`AUDIT CREATE SESSION`),追踪用户登录行为。 - **最小权限原则**:严格控制`SYSDBA`权限,仅限必要人员使用。 --- ### 总结 以`sqlplus / as sysdba`登录后,**无法直接查看用户密码**。这是Oracle数据库的安全特性。如需管理用户身份,应通过密码重置或集成外部认证系统实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值