从django的SECRET_KEY到代码执行
💎 最近审查代码发现某些产品在登录的💎
🤘 🤘 🤘 🤘 🤘
🤘 在
2.3 session处理流程
可以简单的分为两部分,🪩
JS代码中泄露了SECRET_KEY,将该值作为密码加密的盐,这样就暴露了加密salt不太好吧更重要的是对django的安全造成了极大的威胁。django1.6以下,session默认是采用pickle执行序列号操作,在1.6及以上版本默认采用json序列化。代码执行只存在于使用pickle序列话的操作中。2.3 session处理流程
可以简单的分为两部分,
process_request和process_response,前者负责选择session引擎,初始化cookie数据。见代码class SessionMiddleware(object):
def process_request(self, request):
engine = import_module(settings.SESSION_ENGINE)
session_key = request.COOKIES.get(settings.SESSION_COOKIE_NAME, None)
request.session = engine.SessionStore(session_key)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
i_82发现,他是一名来自扬州大学的学生、WeipTech成员。WeipTech是一个非职业技术团体,由WeiPhone(中国最大的Apple粉丝网站)的用户组成。之前WeipTech与我们合作,披露了iOS和OS X上的恶意软件AppBuyer、WireLurker。从2015-07-01开始,
WeipTech 开始调查一些用户Apple账户在未经授权的情况下,购买和安装了iOS app。再对用户安装的越狱应用进行调查后,他们发现了一款越狱应用收集用户信息,并上传到一个未知的网站。他们发现这个网站存在SQL注入,能够查看到所有的数据记录。Figure 1是”top 100”数据库的截图通过逆向恶意应用,
WeipTech 发现了一段代码,这段代码中使用静态key为“mischa07”的AES加密算法对数据进行加密。利用静态key,我们能够解密用户名和密码。经过登陆验证,他们确信记录中的信息都是有效的Apple账户。在网站管理员发现、关闭服务之前,WeipTech调查人员下载了大约一半的数据库记录。8月25日,
WeipTech在微博发布漏洞预警,将漏洞提交到WooYun(乌云漏洞报告平台),并后续转交第三方合作机构CNCERT/CC(国家互联网应急响应中心)处理。Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
这里将java反序列化漏洞的payload封装了下,PayloadGeneration.generateExecPayload("calc");会产生一个执行calc命令的对象,有兴趣的可以在我的github上查看源码。然后,将我们的payload发送到RMI服务端口进行攻击。
registry.bind("pwned", r);中r对象必须继承Remote接口。所以这里使用了java动态代理技术来代理Remote接口并生成其对象r。然后使用bind函数将攻击payload发送到RMI服务中,远程执行calc命令,攻击完成。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
同时木马还注册了拦截短信的服务,该服务会拦截短信内容,判断短信发送方的号码是否是以10开头的,如果是,则屏蔽掉该短信,导致中毒手机开通的扣费服务运营商发送的短信回执无法接收到,用户被木马默默开通了扣费服务。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Skeleton Key被安装在64位的域控服务器上
支持Windows Server2003—Windows Server2012 R2
能够让所有域用户使用同一个万能密码进行登录
现有的所有域用户使用原密码仍能继续登录
重启后失效
🍓 Mimikatz(Version 2.0 alpha,20150107)支持 Skeleton Key
微软在2014年3月12日添加了LSA保护策略,用来防止对进程lsass.exe的代码注入,这样一来就无法使用mimikatz对lsass.exe进行注入,相关操作也会失败。
这次不仅测试了Skeleton Key,还介绍了mimikatz的一些隐藏功能,而这些功能并未在其官方说明文档中出现。🥳 🥳 其实通过研究mimikatz的源码,你会发现还有许多的隐藏功能值得挖掘利用。🥳
还是那句老话,只有了解如何攻击才能更好的防御,希望本文无论是对渗透攻击还是防御,均有帮助。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
函数
remap_pfn_range()并不会检查传入的参数,它会完全按照需求的内存起始位置,所需长度,访问权限,去映射页面进用户态。所有这些检查都需要自定义的驱动中实现的mmap函数去完成。Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
kernel与用户态进程拥有不同的逻辑地址空间,kernel所在的页面拥有更高的权限,用户权限是不可以随意更改的,否则岂不是可以改掉自己的权限,为所欲为。
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
💰💰💰💰💰💰💰💰
1️⃣别百度推广的验证码是我做的第一个验证码识别程序 所以我一直记得很清楚 不是一个二值化就能搞定的 所以说在这个工具中我也加入了同样可以单独处理RGB的功能
🎉🎉🎉🎉🎉🎉🎉🎉🎉
2️⃣由于百度的这个验证码已经访问不了了 所以我找了一个同样有线条的验证码 但是这个验证码线条颜色比文字颜色浅 所以我就用默认的127作为阀值 假设二值化无法搞定
用127阀值上面线条一起被黑化了 但是图片中文字颜色接近黑色而线条颜色却要浅一点 所以判断的时候 可以认为RGB的平均值大于20的就视为背景 就可以这样干
🤔🤔🤔🤔🤔🤔🤔🤔🤔
3️⃣这样线条就被处理掉了 不过这个验证码直接设置阀值就能搞定 只是为了说明所以采用127作为阀值 还有一点这个验证码和百度的那个 他们线条都是在文字的下方 如果是在文字上方 那么同样的超出了这个工具的范围 对于线条在上方的 我想过一些处理方式 假设线条为红色的时候 我在遍历的时候遇到一个红色像素点 我就把红色像素设置为和他相邻像素的非红色的颜色 但是我想了一想这个“相邻”就涉及了它周围八个像素点 我应该取那一个像素点的颜色 如果是在背景上还好 他周围应该都是背景的颜色 那一个都无所谓 可是如果是在线条、背景还有文字的交界处就不好处理了 所以工具里面暂时还没提供这样的功能 还有那种很难分离背景或者字黏贴在一起的但是每个文字都是一个颜色的那种 也想过一些处理方式 但是实现起来我感觉都会纯在一些小问题 所以就还展示没有做 就不扯那么多了 等做好了再来扯 才比较有证据
🚀 🚀 🚀 🚀 🚀 🚀 🚀 🚀 🚀
1️⃣别百度推广的验证码是我做的第一个验证码识别程序 所以我一直记得很清楚 不是一个二值化就能搞定的 所以说在这个工具中我也加入了同样可以单独处理RGB的功能
🎉🎉🎉🎉🎉🎉🎉🎉🎉
2️⃣由于百度的这个验证码已经访问不了了 所以我找了一个同样有线条的验证码 但是这个验证码线条颜色比文字颜色浅 所以我就用默认的127作为阀值 假设二值化无法搞定
用127阀值上面线条一起被黑化了 但是图片中文字颜色接近黑色而线条颜色却要浅一点 所以判断的时候 可以认为RGB的平均值大于20的就视为背景 就可以这样干
🤔🤔🤔🤔🤔🤔🤔🤔🤔
3️⃣这样线条就被处理掉了 不过这个验证码直接设置阀值就能搞定 只是为了说明所以采用127作为阀值 还有一点这个验证码和百度的那个 他们线条都是在文字的下方 如果是在文字上方 那么同样的超出了这个工具的范围 对于线条在上方的 我想过一些处理方式 假设线条为红色的时候 我在遍历的时候遇到一个红色像素点 我就把红色像素设置为和他相邻像素的非红色的颜色 但是我想了一想这个“相邻”就涉及了它周围八个像素点 我应该取那一个像素点的颜色 如果是在背景上还好 他周围应该都是背景的颜色 那一个都无所谓 可是如果是在线条、背景还有文字的交界处就不好处理了 所以工具里面暂时还没提供这样的功能 还有那种很难分离背景或者字黏贴在一起的但是每个文字都是一个颜色的那种 也想过一些处理方式 但是实现起来我感觉都会纯在一些小问题 所以就还展示没有做 就不扯那么多了 等做好了再来扯 才比较有证据
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
本文仅对SSP的常规用法做了演示,实现了在本地保存域控的账户和密码,而且基于这个思路,可以开发出更多高级的利用方法。
如果站在防御的角度,常规方法已经力不从心,只有更多的了解攻击才能更好的防御。
Security Support Provider Interface,直译为安全支持提供程序接口,是Windows系统在执行认证操作所使用的API。
简单的理解为SSPI是SSP的API接口
LSA:
Local Security Authority,用于身份认证,常见进程为lsass.exe
特别的地方在于LSA是可扩展的,在系统启动的时候SSP会被加载到进程lsass.exe中.
这相当于我们可以自定义一个dll,在系统启动的时候被加载到进程lsass.exe!
如果站在防御的角度,常规方法已经力不从心,只有更多的了解攻击才能更好的防御。
Security Support Provider Interface,直译为安全支持提供程序接口,是Windows系统在执行认证操作所使用的API。
简单的理解为SSPI是SSP的API接口
LSA:
Local Security Authority,用于身份认证,常见进程为lsass.exe
特别的地方在于LSA是可扩展的,在系统启动的时候SSP会被加载到进程lsass.exe中.
这相当于我们可以自定义一个dll,在系统启动的时候被加载到进程lsass.exe!