kenkantzer.com/learnings-from… #学习

作者为初创企业做了多年的代码审计后得出的一些经验:

- 小团队更高效
- 简单比聪明更重要
- 最危险的事最显眼的安全漏洞
- 不要反序列化不可信数据
- fuze testing 真香
- 几乎没人用对 JWT
- 别用 MD5 了
JWT 最广受诟病的应该就两个问题:

1. 加密方法写在 header 里,如果 verifier 忘记验证指定加密方法,可能会被恶意攻击者故意选用一个弱安全级别的方法

2. 需要额外的外部存储来记录 token 吊销的情况,防止重放攻击,而不是简单地删除 token 就行了。
MD5 也是一个很有趣的话题,一个暴论是“你无论如何都不应该再使用 MD5”。

我们一般将哈希算法分为密码学哈希和非密码学哈希。MD5 已经被驱逐出了密码学哈希领域(至少得用 SHA-1)。而作为非密码学哈希,它的性能和 xxhash 比又太低。

在现代硬件上,MD5 甚至比 SHA-1 还慢。

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with 秃涸西🇪🇨

秃涸西🇪🇨 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @greatested

May 29
冯国璋入主总统府后,首先遭殃的是三海(北海、中海、南海)的鱼类。自明清以来,三海一直是历代皇帝的放生之所,水中有许多大鱼。“尽捕三海巨鱼出售”,有的百年寿星鱼竟然流入饭店,其中有明朝嘉靖金牌放生鱼一尾,被某使馆花重金买去。冯国璋死后,有人写对联讽刺说:“南海鱼何在,北洋狗已无。”
徐世昌上任后,经过一番讨价还价,以每年2500元的价格将北海的鱼包卖给鱼商。从此以后,每月都有渔船来捕鱼,大煞风景。此事传遍北京,人们讥笑说:“堂堂大总统,一年2500元的生息也不放过!”徐世昌的夫人听到此事,不以为耻,反而要徐世昌把故宫后花园的花木划给她包卖,说是“利益均沾”
皇宫内廷之中的腐败现象由来已久。内廷人员按照官阶不同层层盘剥。一位西方作家在著作中写道:“清王朝的贪污腐败之风举世罕见,有一次皇上拨了8万元用于修理北京街道,结果经过层层盘剥,最后到达工人手上的时候,竟然只剩下80元了。”
Read 5 tweets
Mar 28
原来切尔诺贝利事件并不是苏联的第一次核事故,也不是 RBMK 反应堆的第一次事故,甚至不是切尔诺贝利的第一次事故…
在一座神秘的不存在于地图上的西伯利亚小镇 tomsk-7,从 1955 年起就进行着秘密军用核电站研究,目的是为苏联提供武器级的钚,以及设计可供大型海军舰艇使用的核发电设备。 Image
1955 年研制成功的 Iwan-1 可以用来生产钚。
1958 年在 Iwan-1 的基础上研制成功了 Iwan-2,在制造钚的同时,还可以输出 100 兆瓦的电能。

books.google.com/books?id=rZBdD… Image
Read 62 tweets
Mar 9
偷袭珍珠港的那天,我还在念初二。“哇,我们真的成功了!”我心想。
“号外,号外!”大街小巷的卖报人大声而急促地吆喝着,“今天凌晨,美英对日宣战。”我感觉自己瞬间血脉贲张,身上的每个细胞都颤抖了起来。全国人民都沸腾了,欢欣鼓舞,振奋不已。“我们真的做到了!太不可思议了!太棒了!”
日本必须绝处逢生——这是当时所有日本人的心态。这些国家一心想把日本往死里逼。日本有句俗语叫“穷鼠啮狸”,意思是老鼠被逼入绝境时也会咬猫(与“兔子急了也会咬人”意思相近)。我们坚信,美国是魔鬼,英国是坏蛋。我们来不及细想,也不明白他们为什么要包围我们。
我们在课堂上所学的东西可能会让你非常震惊。“民主”意味着你高兴干什么就干什么。如果我们不得不与美国开战,那也不用担心,因为美国是民主国家,迟早都会崩溃。当时似乎人人都这么认为。美国人永远无法为了共同的目标团结在一起,这个国家缺乏凝聚力,只要轻轻一击,就会土崩瓦解的。
Read 39 tweets
Feb 16
看来古代史也快被禁了,这不赤裸裸的恶政隐吗。
中国数千年的历史,就是在管仲主义(市场经济)和商鞅主义(计划经济)间来回更迭。流水的意识形态,铁打的中央集权,无论什么主义,都避免不了中央集权导致的特权阶级坐大,侵蚀国家经济,最终落入盛衰循环。

毛泽东语:唯有民主,可以破盛衰循环。
太文雅了,还“速生植物”,直接说韭菜得了。
Read 5 tweets
Dec 2, 2021
请教一下,如果我想看 kubernetes apiserver 的某个资源接口是怎么实现的,该去哪个仓库找代码?

比如我想知道 kind: SelfSubjectAccessReview 这个 API 的服务端是怎么响应的。
(这个 API 应该不是简单地查数据吧?)
按以前搞 CRD 的经验,查资源都是用 client-go 的 indexer 直接查。
但我没想明白,查询某个用户是否有某个权限怎么也能这么查?难道事先把这个人对应的全部权限都枚举出来存好了?
github.com/octarinesec/ku…

没找到 k8s 的实现,但是找到一个第三方插件的实现,这个实现方式是符合我预期的,就是用用户名去反向查找 Role 和 ClusterRole,然后对权限集取并集即可。 Image
Read 4 tweets
Nov 19, 2021
看到用 Asia/Shanghai 时区的项目我就想掏出砍刀把开发全部砍死。
1927 年,上海从 DST 切换到 CST,时间回拨了 5 分 52 秒。一但出现这个时刻以前的时间,就会出问题。
举个例子,你把 0000-00-00Z 转换成 Asia/Shanghai,会发现得到的不是 8:00,而是 8:05。
时区是个巨坑,你又不是历史专家,不可能掌握所有的坑,最简单办法就是别用,全部改用 UTC。
时区的坑多到什么程度呢?上面那句话里就有两个坑。

首先,中国人看到 CST 会以为是中国标准时,但是老美看到了会以为是中部标准时。所以沟通时区不要用简称,最好直接给 offset。

其次,0805 这个描述也不太对,时区既不精确到时,也不精确到分,其实最好要到秒。
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(