安全渗透测试经验分享

图片上传: 图片类型,大小校验, 图片上传后的地址

图片上传后的地址: 如果上传后会有地址,可能会有漏洞, 如果是把图片存在某云端, 可能不会有什么问题, 比如zure blob 里面, 它子自带校验,是图片, 并且满足条件, 才会上传成功

框架的测试: 自己不了的框架在测试时, 最好是在框架的官网, 查看安全相关的介绍, 看会不会有漏洞

比如: react 这个库, dangerouslySetInnerHTML这个方法很容易有XSS, 所以可以搜索源码, 看是否使用了, 如果这些类似的不太安全的方法都没使用, 就可以对输入框什么的不用测了, 因为React 本身已经做过测试, 很安全了

第三方接口:一般调用第三方的接口, 都会有一个KEY, 需要测试该key 的复杂度, 当它足够复杂的话, 才不会出问题, 如果不够复杂, 可能会被修改。

例如,腾讯地图接口, 查看官网得知, 这个接口是有次数限制的, key 被盗用, 恶意攻击者可能会消费该接口

错误堆栈: 在很多的response body 里面会有很多错误堆栈, 类似类名, 路径,等等。 备注: 很多测试环境这类信息为了调试, 会更多, 但是记得在上线后, 不使用的时候记得删掉。

SQL注入: 最好查看源码, 看SQL怎么写的, 比如ibatis这个库, 其实很大程度可以放置一些SQL注入, 因为它要求SQL必须是固定的语句, 外界很难注入

jwt token 的使用:它的使用保证了很大的安全性, 比如当一个用户被删除后, 再次登陆时,会报错。 我们可以用该用户的tocken来做校验, 中间的payload (用户ID)会加密成密文,用来校验该用户的身份。

它包括三部分: 算法+paylooad+签名

并且,当攻击者对中间的用户身份相关信息解码修改后, 当再和签名关联起来时,该JWT token 会报错, 识别到修改。

安全测试需要保证该签名的复杂性,不容易被伪造

你可能感兴趣的:(安全渗透测试经验分享)