Java框架安全
Mybatis注入问题Mybatis是目前比较常用的ORM的框架,一般与SpringMVC框架整合较多,但使用不当会有SQL注入的风险。Mybatis里mapper中SQL语句的写法支持两种形式的占位符,一种是#{value}一种是${value}.使用#进行占位时,如:
Mybatis注入问题Mybatis是目前比较常用的ORM的框架,一般与SpringMVC框架整合较多,但使用不当会有SQL注入的风险。Mybatis里mapper中SQL语句的写法支持两种形式的占位符,一种是#{value}一种是${value}.使用#进行占位时,如:
<selectid="selectUsername"resultType="com.example.bean.Admin"> select * from admin where username='#{username}'</select>内部实现是使用了JDBC预编译技术:String sql = “select * from admin where username=?” ;PreparedSatement ps = conn.prepareStatement(sql) ;Ps.setString(“admin”, username) ;但是使用$进行占位时,在内部实现中是字符串拼接:<selectid="selectUsername"resultType="com.example.bean.Admin"> select * from admin where username='${value}'</select>
Home > iOS安全–可执行文件dylib注入,无需越狱
iOS安全–可执行文件dylib注入,无需越狱
简单来说就是通过修改可执行文件的Load Commands,增加一个LC_LOAD_DYLIB,写入dylib路径。这样程序执行的时候就会来编译这个LC_LOAD_DYLIB找到要注入的dylib,从而进行加载
iOS安全–可执行文件dylib注入,无需越狱
简单来说就是通过修改可执行文件的Load Commands,增加一个LC_LOAD_DYLIB,写入dylib路径。这样程序执行的时候就会来编译这个LC_LOAD_DYLIB找到要注入的dylib,从而进行加载
Media is too big
VIEW IN TELEGRAM
在过去的几周里,我参加了很多 CTF(夺旗赛)——新旧皆有。老实说,我简直不敢相信我错过了什么。这段时间,我通过参加 CTF、阅读文章,甚至在 YouTube 上观看解决方案,学到了很多东西。这让我意识到我还有多少不知道的东西,也让我看到了我的知识空白在哪里。
我特别感兴趣的 CTF 之一是Google CTF。我非常喜欢 Google CTF 的原因是它允许初学者和专家参与,甚至允许 CTF 新手尝试一些安全挑战。
我选择参加初学者挑战,看看我的技能水平到底如何 - 虽然“大部分”都很容易,但仍然有一些挑战让我用头撞桌子,像疯子一样谷歌搜索。尽管 Google CTF 已经结束,解决方案也在网上,但我还是不惜一切代价避开了它们,因为我想“艰难地”学习。
这些新手挑战以“探索”形式呈现,场景类似于现实世界的渗透测试。这样的场景非常适合那些想要磨练技能、学习有关 CTF 和安全的新知识,同时还能让他们看到现实世界的价值和影响的人。
现在,有些人可能会想……“我需要知道或学习多少才能参加 CTF? ”或“ CTF 有多难?”
说实话,这要看情况。有些 CTF 可能比其他的复杂得多,例如DEFCON 的 CTF,甚至 Google 的 CTF 都相当复杂 - 但并非不可能!这完全取决于你的专业领域。
许多 CTF 团队都有专门从事代码审查和 Web 应用的人员,他们可以闭着眼睛完成 Web 挑战,但给他们一个二进制文件,他们不会知道EIP和ESP之间的区别。其他人也一样!当然,有些人是“万事通”,几乎可以做任何事情,但这并不意味着他们是所有领域的专家。
读完这篇文章后,你可能会问我——但我以前从未参加过 CTF!我怎么知道我是否准备好尝试一次了?
老实说,你永远都不会做好准备!总会有新的东西要学,有你从未见过的新东西,或者有挑战性的东西会突破你的知识极限,即使你是一个专家!这就是 CTF 的全部意义所在。
但是,有一些资源可以帮助您入门!
我特别感兴趣的 CTF 之一是Google CTF。我非常喜欢 Google CTF 的原因是它允许初学者和专家参与,甚至允许 CTF 新手尝试一些安全挑战。
我选择参加初学者挑战,看看我的技能水平到底如何 - 虽然“大部分”都很容易,但仍然有一些挑战让我用头撞桌子,像疯子一样谷歌搜索。尽管 Google CTF 已经结束,解决方案也在网上,但我还是不惜一切代价避开了它们,因为我想“艰难地”学习。
这些新手挑战以“探索”形式呈现,场景类似于现实世界的渗透测试。这样的场景非常适合那些想要磨练技能、学习有关 CTF 和安全的新知识,同时还能让他们看到现实世界的价值和影响的人。
现在,有些人可能会想……“我需要知道或学习多少才能参加 CTF? ”或“ CTF 有多难?”
说实话,这要看情况。有些 CTF 可能比其他的复杂得多,例如DEFCON 的 CTF,甚至 Google 的 CTF 都相当复杂 - 但并非不可能!这完全取决于你的专业领域。
许多 CTF 团队都有专门从事代码审查和 Web 应用的人员,他们可以闭着眼睛完成 Web 挑战,但给他们一个二进制文件,他们不会知道EIP和ESP之间的区别。其他人也一样!当然,有些人是“万事通”,几乎可以做任何事情,但这并不意味着他们是所有领域的专家。
读完这篇文章后,你可能会问我——但我以前从未参加过 CTF!我怎么知道我是否准备好尝试一次了?
老实说,你永远都不会做好准备!总会有新的东西要学,有你从未见过的新东西,或者有挑战性的东西会突破你的知识极限,即使你是一个专家!这就是 CTF 的全部意义所在。
但是,有一些资源可以帮助您入门!
Media is too big
VIEW IN TELEGRAM
再次,LiveOverflow有一个很棒的视频,解释了为什么 CTF 是学习黑客的好方法。该视频是他在 FSEC 2017 演讲的现场录制,旨在“激励您玩 CTF 并展示各种示例挑战解决方案,向您展示您希望从未见过的东西,并激励您找到更多有趣的漏洞”
Package 钓鱼
前几天 Samba 公开了一个远程代码执行的漏洞,然后各种 POC 也随之出现, exploit-db 上也有这样一个 Python 版本的 POC: Samba 3.5.0 - Remote Code Execution.
直接执行 POC,报错误信息
最后 POC 终于跑了起来.
我们再回过头来看看整个流程,似乎并没有什么地方不对劲。
直接说问题所在吧,如果你在 2017-05-24 到 2017-05-31 这段时间内执行过 pip install smb 或者 pip download smb, 那么恭喜你,你的名字可能出现在我的绵羊墙上
前几天 Samba 公开了一个远程代码执行的漏洞,然后各种 POC 也随之出现, exploit-db 上也有这样一个 Python 版本的 POC: Samba 3.5.0 - Remote Code Execution.
直接执行 POC,报错误信息
最后 POC 终于跑了起来.
我们再回过头来看看整个流程,似乎并没有什么地方不对劲。
直接说问题所在吧,如果你在 2017-05-24 到 2017-05-31 这段时间内执行过 pip install smb 或者 pip download smb, 那么恭喜你,你的名字可能出现在我的绵羊墙上
进入108b2一看就猜测是md5计算,f_Md5_hexdigest将计算结果(32字节字符)保存到md
5字段中输出,设置计算标志。也就是大致确认write是计算md5,然后保存到g_READCC
5字段中输出,设置计算标志。也就是大致确认write是计算md5,然后保存到g_READCC