Mour
Mour
# 传统安全的思考 安全这么多年了,似乎是没有什么实质性的变化。而唯一的诀窍似乎也是层层防御。我这么多天来一直在思考传统安全的变革何在,如何用新的技术改变。无论是从方法论还是从架构实施等方面。也读了一些文章。在这个行业中,加之从业人员水平参差不齐,大多数更是水的全靠一张嘴。 传统安全的改进点,纵观这几年。只能说是整个防御线提前,伸出触角。比如说之前的安全防御在威胁情报上不是很强。然后现在把其作为防御能力或者说感知能力提到安全防御的最前面(不一定是指落地的最前面,而是指整条防御线的最前面)。然后落实纵深防御,可是方法还是那一套。只不过是随着时间的变迁,技术的变迁。从收集log到存储log的方式都发生了变更,同样在架构上也产生了新的变化。比如redis和memcache的使用,elasticsearch的使用。有能力的公司则是根据自己的实际情况,进行造轮子,或者研发出新的产品。然而随着这些产品的使用,又会不断的暴露出新的安全隐患。而"吹嘘"正胜的AI呢,在这个环节中,似乎已经是开始助力的时候,但也没有大规模的落地,不过我相信AI作为基础设施,在未来一定是会无处不在的。 至于安全运维,似乎也是没有大的进展,AIOPS的概念可以吹一年。当然也不排除大厂落地的可能。看到大厂分享的文档上说利用怎么怎么样达到AutoOPS。据我思考来看,也只是对一些metric数据进行了分类,避免传统过程中仅仅是通过单项或几项指标去手动操作,而可以通过自动分类的情况下进行扩容等操作。 应急响应的话,老一套,如果能预先感知,在落地前发现,在网络层拦截,去避免掉攻击,那也就没有应急响应了,至于应急响应的系统,似乎是没有什么大的改进,无论是Google的FIR还是GRR等,都不是很好用,也谈不上智能,仍然是需要团队去运营的。 方方面面,均未看到有什么新的发现,在应用安全和业务安全上的对抗随着技术的变更都在不停的变化,其他方向也是,但是技术虽有变化,传统安全却依旧如此。 AI引入也确实能解决问题。或者,是不是说,我们已经身处变革之中,却未有所意识,但传统安全的新变革绝不是将已知的各个模块在防御的时间线上,拉长或者扩大。变革的出路在哪里,有待思考。 Other: 据之前看到的一篇文章说,安全行业的下一个风口应该是做对抗模拟。 # 拧螺丝的工作 小公司的话需要面面俱到,都能独挡一面。不过现实中更多的是在小公司中没有很好的接受系统化工程化的项目,导致野路子出身。对于安全来说,似乎不是很明显。但是当一旦进入大公司之后,可以明显的看到,从之前的发散式立马转变到了专一的,或者乏味的,重复的拧螺丝之中。 俗话说的招人造火箭,进去拧螺丝就是这个意思。对我而言,刚刚进入饿了么,接触到团队类型的安全工作。之前的安全工作可以说只局限到1-3个人。而现在安全团队内纯职能就有20多人,各个分工也是明确。于是乎,接到的任务也就颇为单调。似乎会让人觉得无奈,和开始思考职业道路,人生道路。 于是,经过思考,我决定,把这份有点单调的工作,先自动化流程起来。然后去推进集团内改进该平台。与此同时,继续学习安全架构,及整体的安全大局观。当然,这也就是我为什么一直在思考传统安全的变革之处。在之前,我所建设的整体的安全,和此处来看,就是他把我要的做得全部落地了。从量上发生了变化,但是质的变化,还是有待变革。整个安全行业均是如此。 似乎是安全的发展步伐慢了点。我怎么这么菜!! 福利,关于我对反爬的思考面面观,大部分是经过实操的。 有时候,想要变革或者说创新真的很难。
打算通过批量生成进行编码后的`payload`作为数据集,进行训练自动提取IOC规则。或者自动训练出分类器进行识别。当然脚本中我不仅采用了不同的编码格式还采用了不同的文件格式,其实也可以不需要。不过目前只是针对`linux`平台的做了输出。将`$(grep linux $PAYLOADSLIST)`替换为`$(cat $PAYLOADSLIST)`即可输出所有。 关键的命令无非是分别列出各项支持的条目,然后进行输出。 * `msfvenom -l formats` * `msfvenom -l encoders` * `msfvenom -l payloads`  完整脚本如下,根绝自需修改。 ```bash #!/usr/bin/env bash ENCODERSLIST='encoders.list' PAYLOADSLIST='payloads.list' # also you can use `msfvenom...
Update: you can find script [here](https://github.com/mylamour/IlI/tree/master/tgimgsave) This is a simple image file download from telegram channel step1 : my.telegram.com去申请api step2: pip install telethon step3: use telethon download image from channel,...
* https://github.com/mylamour/reverse-shell * https://openode.io 最后成品在 http://reverse.us.openode.io  其他: 本来计划在netlify上搭建,后来看到监听3000,不被允许,就寻思着改成监听80,依旧不行。最后选择了Heroku和openode. 但是现在heroku绑定域名已经需要认证信用卡了,就采用了openode,唯一的问题是openode的自定义域名绑定也是有问题的。 原理很简单,拼凑shell脚本,动态传入目标主机和端口号,将这一部分作为url参数传入。这个服务早就有了。后来只是看别人用Python重写了一份拿出来,随即想造一份,一想都一毛一样,最后搭了一个玩玩。然后发现cloud9也被aws整合了,modular也被godday收了。
## 安全顾问 接触香港那边,开始了解整体的架构和技术方案。用的是`php`和`golang`, `golang`用于实现游戏的逻辑,`php`用于实现业务系统的逻辑,分别部署在一个私有机房的5台服务器上。web 服务器用的nginx,后盾数据用的mysql进行存储。服务除了各个系统服务和业务之外还有`ipfs`, `rsync`。当然这是比较中规中矩了。后来了解了下还没有负载均衡系统,等等都没有。 但是根据`轻重缓急`的原则,开始考虑。即重要又急切的肯定是要先做的。退而其次,不严重的又不着急的最后再去做。以保证公司的安全先得到基本的保障。 p> 然后了解一下买了WAF,但是没有CDN所以,所以先对设计基础架构,然后做其检测。因为时间原因,都是先从基础的来。至于办公内网的安全,运营这些肯定不是当务之急。 暂时列出来下面这些条目,同步进行。 - [x] 基础架构设计 - [ ] 安全配置与基线检查 - [ ] 业务代码安全审计 - [x] 服务加固和主机加固 (linux/windows, mysql等) - [x] 安全编码规范 -...
树莓派型号: zero w, 接了个红外摄像头,用人脸识别,然后推送到了微信。最开始打算的是`darknet`和`tiny yolo `去识别视频流。但是darknet在`zero w`只能`segmention fault`。无语。最后选择纯`python`套路 。还挺好玩的。 采用的库主要为`picamera`, `face_recognition`, `wxpy` 逻辑较为简单,实现起来也不难,问题主要在raspberry zero w 上编译dlib, 安装软件等。所以有个更好的方法是直接下载`whl`文件,`face_recognition`的官方安装方式太慢了。只编译dlib都用了一天,而且还要下载model,所以建议下载好model,然后手动安装。 ` wget https://www.piwheels.org/simple/face-recognition-models/face_recognition_models-0.3.0-py2.py3-none-any.whl` ```python #coding:utf-8 from wxpy import * from PIL import Image...
:triangular_flag_on_post:记录昨天安全设计评审的过程,当然这也是第一次进行安全评审。因此做一个总结。安全设计评审应该是SDL落地安全人员参与过程中首当其冲的地方。仅指安全人员自身的功用。如果按照`SDL`流程来讲,最前期应该是进行安全培训。我们可以看两个微软SDL官方给出的流程图。   那么在安全设计评审这一阶段,应该怎么去做。我们可以先看下唯品会的SDL中在落地安全设计这一块怎么做的。  就我自身而言。是按照以下这个流程进行的。 看着一大堆乱七八糟,自上而下的流程,但是做起来其实很快的。此处默认安全人员熟悉各种基本的开发过程中的安全规范以及一些`Checklist`(必须要了解公司开发语言对应的安全开发规范),举例: `web`安全开发规范,`Python`安全编码规范,`Flask`安全, `Django`安全,常用的安全配置,面临哪些攻击点等等。 ps: 明确逻辑是非常重要的,可以说最为重要,如果连逻辑都不明白,谈什么设计评审。 一些比较基础的: * HTTPS Everywhere * Bcypt 存储Hash * OTP * 频率限制 * 盐不要硬编码 * secret 和 auth-token 不要硬编码 *...
合约安全入个门
不知道什么情况,老板准备做游戏?还是做博彩?不清楚。让看下合约安全,然后给大家分享一下。不好说,两天时间,还要分析下几个Dapp的合约代码。还好之前自己学习过一点。然后现学现卖,搞了一下。想说的都在PDF里了。 PDF -> [smart contract security basicly](https://github.com/mylamour/blog/files/2366085/basic.sharing.pdf) # Resources * Ethereum Safety: https://github.com/ethereum/wiki/wiki/Safety * Smart Contract Best Practices: https://consensys.github.io/smart-contract-best-practices/ * DASP top10: https://github.com/CryptoServices/dasp * Safe Solidity: http://chriseth.github.io/notes/talks/safe_solidity/ * Audit Smart...
因为参与到`SDLChina`的文档编写,恰好公司内的编程语言采用的是`Python`,故整理之。此文亦可在sdlchina官网看见。 ## python语言安全 本身要注意的有,一些危险函数,危险模块的调用,主要是系统调用。这个如果调用一定要对输入输出做好过滤,以下是代码中各种导致进行系统调用的方式。尽量避免。 - 避免各种情况导致系统调用 - 谨慎使用Eval - 数据序列化 ### type 1: keywords 1. `exec('import os ;os.system("ls")')` 2. `eval('__import__("os").system("ls")')` 3. `f'''{__import__('os').system('ls')}'''` 4. `[].__class__.__mro__[-1].__subclasses__()` 5. `_builtin__.open('/etc/passwd')` 6. `system('ls')` 7. `[].__class__.__base__.__subclasses__()[59]()._module.linecache.__dict__['o'+'s'].__dict__['sy'+'stem']('l'+'s')...
 ## 综述 * 实体 > 日志,流量,行为,文件本身 * 方法 > 黑名单,白名单,规则匹配,模糊hash校验, MLDL(CNN/SMV/Naive Bayes,图聚类), KG(知识图谱关联属性), 语法抽象树(AST) ## Webshell 检测篇 ## Malware 检测篇 ## APT 检测篇 与 通用检测框架 聚合waf数据,web日志,交换机日志,IDS日志等等,以及一些设备信息应该是可以发现APT攻击的,APT攻击不易发现甚至不能发现,不意味着我们什么都不能做,攻击手段也不一定是高的什么都做不了。如果能够布置大规模的蜜罐网络,进行伪装,并有效的收集设备信息,聚合起来通过不同手段进行检测。或许也未可知。但是由于本身我没有这方面资源,就不扯淡了。