在第一篇关于AI绘图的文章中,我主要介绍了stable diffusion的各种使用方法
在midjounry收费之后,除非你对AI绘图这个操作本身有强需求,否则在免费自建的**stable diffusion上做拓展就成了现在最好的解决方案。**
这篇文章就聊一些stable diffusion的一些进阶操作和关键点。其中有不少还是很有意思的。
在第一篇关于AI绘图的文章中,我主要介绍了stable diffusion的各种使用方法
在midjounry收费之后,除非你对AI绘图这个操作本身有强需求,否则在免费自建的**stable diffusion上做拓展就成了现在最好的解决方案。**
这篇文章就聊一些stable diffusion的一些进阶操作和关键点。其中有不少还是很有意思的。
在前面的文章中,无论是各种prompt技巧,又或者是对话技巧,更或者是各种数据集训练,都逃不开两个致命的问题。
1、ChatGPT只能处理文字
2、无论是上下文参考,还是单条对话都有token限制
所以在ChatGPT中,很多应用方向遇到的第一个问题就是如何把问题用文字的方式描述出来,其中最典型的场景就是代码分析。
所以ChatGPT也鼓励使用Embeddings来做类似搜索、分类或者异常检测的分析,这篇文章就讲讲这个。
在之前的文章中曾经提到过,ChatGPT其实是不接受来自互联网的知识的,他的所有内容都是来自于至少3年前各种来源的知识库。但这并不意味着ChatGPT没有能力学习你的回答。
首先ChatGPT一般会根据你和他的问答内容进行一定的上下文参考,其次,由于ChatGPT学习的内容之庞大,你通过一种直白的方式问不到的答案不一定是他不会,有可能是你问的方式不对。
在ChatGPT的官方文档中,他首先鼓励你通过提供多个示例来让ChatGPT更准确的寻找答案,他把这个方案称之为**“few-shot learning.”**
除此之外,当然他也允许你通过微调功能来对ChatGPT进行一定的训练,来获得一个更符合自己要求的ChatGPT,当然,这个功能是收费的。
但Fine-tuning这个功能目前只能应用于GPT3的基础模型,就目前而言,这个功能其实还不如很多市面上的其他大模型,openai并没有给出特别好的自定义方案给大家。但这篇文章还是先聊聊这个。
互联网发展零零散散都要20多年了,技术发展的重心也一直在演变。今天这篇文章很特别,起因是最近有一些关于微信机器人以及公众号爬虫的需求,本以为这种老透了需求其实现在根本不需要花什么时间精力去搞,结果没想到这个东西在过去的十几年里经过了很多次变化,于是决定记录下这篇文章,一方面是留个技术存档,另一方面也是想看看10年之前的技术相比现在和10年之后发生过又或者会发生什么的变化?
在我们对ChatGPT的基础能力有了一定的了解之后,我们就要开始在ChatGPT的基础上探索更多的可能性。
而ChatGPT本身的问题也很多,ChatGPT在使用上最大也最明显的革命,其实是对自然语言的处理能力,抛开太多专业性的术语,你在使用的过程中也能明显感觉到,ChatGPT甚至在某些方面有着比正常人更厉害的解读能力,它可以把一段模糊的要求和文字解读成需求,最牛逼的是它还支持中文,毕竟理论上中文的自然语言处理难度是几个量级。
在上篇文章的结尾,我提到了ChatGPT其实更像是一把铲子,在拥有这把铲子之前,我们只知道可以把土堆成房子,但是不知道用什么把土堆起来,但在有了这把铲子之后,铲土只是铲子最直白的利用,如何用铲子堆一个又大又漂亮的房子可能我们还不知道,但至少我们现在已经开始尝试做这样的事情了。
其实从ChatGPT诞生至今,所有从事相关研究的朋友都在努力的在ChatGPT上探索各种各样的使用方式,甚至现在已经诞生了所谓的prompt工程师。
这篇文章就聊聊很多现在已有的关于ChatGPT使用的技巧。
在2023年年初,ChatGPT像一颗流星一样突然出现在大家的面前,围绕ChatGPT的探索也以各种各样的方式出现在大家的面前。
相比基于ChatGPT的探索,openai的平台和国内的对抗反倒在潜移默化的升级,我没有了解过openai到底有什么样的背景导致一直执着于国内使用者的封禁,这篇文章就先讲讲我在这个过程的所有探索以及相应的解决方案吧。
随着ChatGPT的爆火,最近和人工智能有关的各个部分也有一次爆火起来,由ai制成的美少女也是最近的一个爆火的话题,花了一点儿时间了解了一下,感觉还挺有意思的,现有的工具已经是非常成熟可用的东西了,接下来简单介绍一下怎么玩
前段时间这个漏洞被挖掘出来之后的时候还是引发了很多关注的,但是最初一直都没有什么像样的分析文章出来,最早看@漂亮鼠的文章之后才大体上对这个漏洞有了一个基本的认识。
https://mp.weixin.qq.com/s/l5e2p_WtYSCYYhYE0lzRdQ
但是不知道是我的java水平真的不够,又或者说这篇文章中隐去的部分太多了,我顺着文章研究了一段时间但是几个点都串不起来。后来又接二连三的看了几篇文章,直到看完@pang0lin才算是把逻辑串联起来许多
这篇文章不知道什么时候发出来,主要是记录一下整个复现分析的心路历程,以便以后需要的时候没处看。
SCA是什么?我想可能很多人都有这个问题。SCA的全称叫做Software Composition Analysis,有的朋友可能直接把他叫做软件成分分析,也可以叫他组件安全分析。现代的SCA大多数都是基于白盒的角度去做,也就是SAST中的一环,但是也有不少场景需求对二进制或者运行中软件做分析,当然这不是今天讨论的主要目标。这个东西最常见的地方就是github,github内置了一个简单的SCA扫描
今天我们主要聊聊白盒角度的SCA,SCA这个东西听名字好像很复杂,但是实际上把它聊的简单一点儿可以拆开两部分,一个是组件数据,另一个是漏洞数据,我们分开聊聊这两个部分。
新建这篇文章的时候,是我离开小米的倒计时7天,也是我加入小米的第289天。这篇文章发出来的时候,是我离职的最后一天,实话讲10个月的时间对于一段工作经历来讲显得好像特别短,显得不止一提。但是对于一段人生经历来讲,貌似足够做很多事情。
1年前我在离开知道创宇的时候曾写了一篇万字长文,聊了聊毕业之后的一些经历,很多朋友从那篇文章认识了我。那个时候的我决定离开舒适圈,去尝试生命的更多可能。289天后的今天,我又一次做了同样的决定,这一次我决定做一个自由职业者。
其实实话讲,离开一家公司的原因大可不必说的那么高尚,无非就是钱不够、事太多、不想干3种原因中的一个。很显然,结合我的性格,我自然是因为不想干所以选择离开小米,所幸的是也有一些能力支撑我探索下一阶段的方向,在正值结婚的节骨眼,面临生活的很多未知的压力,我女友也愿意相信我的选择。关于离职原因中和公司有关的部分以后有机会再说,今天想给大家分享几个故事。
2021年12月9日,一场堪比永恒之蓝的灾难席卷了Java,Log4j2爆出了利用难度极低的JNDI注入漏洞,其漏洞利用难度之低令人叹为观止,基本可以比肩S2。
而和S2不一样的是,由于Log4j2 作为日志记录基础第三方库,被大量Java框架及应用使用,只要用到 Log4j2 进行日志输出且日志内容能被攻击者部分可控,即可能会受到漏洞攻击影响。因此,该漏洞也同时影响全球大量通用应用及组件,例如 :
Apache Struts2
Apache Solr
Apache Druid
Apache Flink
Apache Flume
Apache Dubbo
Apache Kafka
Spring-boot-starter-log4j2
ElasticSearch
Jedis
Logstash
…
下面我们来一起看看漏洞原理
在2019年初,微软正式选择了Chromium作为默认浏览器,并放弃edge的发展。并在19年4月8日,Edge正式放出了基于Chromium开发的Edge Dev浏览器,并提供了兼容Chrome Ext的配套插件管理。再加上国内的大小国产浏览器大多都是基于Chromium开发的,Chrome的插件体系越来越影响着广大的人群。
在这种背景下,Chrome Ext的安全问题也应该受到应有的关注,《从0开始入门Chrome Ext安全》就会从最基础的插件开发开始,逐步研究插件本身的恶意安全问题,恶意网页如何利用插件漏洞攻击浏览器等各种视角下的安全问题。
在经历了前两篇之后,我们把视角重新转换,把受害者的目标从使用插件者换到插件本身。对于Chrome ext本身来说,他会有什么样的问题呢?
PS: 当时这份研究是在2020年初做的,当时还在知道创宇的404实验室,感觉内容很有趣所以准备拿去当议题。2020年我想大家都懂的,很多会议都取消了,一拖就拖到2021年,本来打算拿去投KCON,但是没有通过。所以今天就整理整理发出来了~
前一段时间刚到小米,由于一直以来都没从事过甲方安全,在熟悉工作的过程中慢慢有很多感触。于是就写下了这篇文章,其中的一些观点来自我个人的理解,如果有错误的话,麻烦联系我指出~
如果你在甲方从事安全行业,那我想DevSecOps是一个你不得不听说过的一个词语。从几年前甲方安全一直推行SDL开始,这几年DevSecOps又成了当前安全践行的主流方向。今天的文章我们就从DevSecOps开始,探讨在这个环节下的白盒究竟需要怎么样的形态。
发现最近已经有一段时间没有产出新的文章了:<,最近刚入职新公司,有很多东西在感受学习,所以博客也开始难产啦,后续会慢慢写一些最近一段时间关于白盒的很多新感受。
今天正好赶上内部分享,也就炒个冷饭,这是我在内部分享的一个PPT,因为内容偏简单,算是一个区块链的科普文章,所以觉得发出来也不错,为了面向新手,其中很多内容做了删减,毕竟已经不从事区块链安全研究很多年了,很多事情确实也是一知半解,如果有错误,欢迎朋友在twitter上联系我~
创建下这篇文章的时候,距离我倒计时离开公司还有2天,事情都是一些琐事,也很难提得起兴趣再做点儿什么,翻了翻还没写的代码,始终是没有动力开始写一个新功能,心中总是百感交集,往事一件件的过,不得不承认我是一个很内向但却是个表达欲望很强烈的人,即便心里深知在离职后谈论过去是很不合适的行为,但仍旧没忍住创建这篇文字。
也许是因为年纪正处于承上启下的关键,稍微停下来不知道该干什么的时候,有些矫情劲总是过不去,忍不住的回忆起过去的一件件过往,有点儿青春期感时伤怀的那味儿。
这些年北漂虽然说大体上过得还是比较符合心意,但仍旧经历了不少,回头看的仍旧不免感叹,既然起笔了,就从大三的暑假开始吧。
流水账警告!
4月12号,@cursered在starlabs上公开了一篇文章《You Talking To Me?》,里面分享了关于Webdriver的一些机制以及安全问题,通过一串攻击链,成功实现了对Webdriver的RCE,我们就顺着文章的思路来一起看看~
感谢蓝猫师傅@cursered在复现过程中的很多帮助~
前篇:通达OA代码审计篇 - 11.7 有条件的任意命令执行
前篇中提到的漏洞在11.8版本中被完全修复后,我痛定思痛,从头开始找一个新的漏洞,于是就有了今天这个漏洞的诞生,但没想到的是,在保留到2021年初时,1月11号更新的11.9版本中再次被定向修复。
今天我们也来看看这一次的漏洞逻辑~
这是一个由有条件的任意用户登录+低权限文件上传+低权限目录穿越+低权限文件包含组成。可能是盯着国内OA的人太多了,这个漏洞在2020年9月28号的11.8版本中被更新修复,比较可惜的是,一次更新修复了全部的漏洞逻辑,不禁令人惊叹。
今天就一起来看看整个漏洞的逻辑~
反序列化漏洞是PHP漏洞中重要的一个印象面,而反序列化漏洞的危害则需要反序列化链来界定,如何挖掘一条反序列化链,往往成为了漏洞挖掘中最浪费时间的部分。
而和挖掘漏洞一样,建立在流敏感分析基础上的自动化白盒漏洞扫描技术,依赖数据流中大量的语法节点数据,通过合理的分析手段,我们就可以回溯分析挖掘漏洞,而挖掘php反序列化链也一样,只要有合理的分析思路,那么我们就可以通过分析数据流来获得我们想要的结果。
今天我们就来一起聊聊,如何把人工审计转化成自动化挖掘方案吧~