首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

正则表达式也会导致拒绝服务?探讨 ReDos(可能会中招哦)

那不是通过使用过滤器来匹配字符串、将字符串列入白名单和黑名单,从而使我们的工作更轻松吗?是的,但是攻击者也可以利用它来使应用程序(服务器)屈服。让我们了解如何! 正则表达式是什么?...这会导致其他合法客户端无法使用资源,并可能导致 Web 服务器和应用程序无响应并最终崩溃。...如果您运行它,则对于所提供的正则表达式,(在返回 False 之前)需要花费大约 2 秒的时间来处理。只是通过添加一个额外的感叹号会导致这么长的时间吗?...标记,因此它会回溯到前面的字母,并查看是否有另一种方法来解析先前的字符,以便可以验证整个字符串。在它最终发现绝不会返回 True 之前,这样的回溯将会一直持续下去。 如您所知,回溯会导致大量时间消耗。...也就是,对于示例给出的有害正则表达式和恶意字符串。如果按照我们的演示进行,设有效最长子串的长度为 ,那么回溯的时间复杂度为 (证明过程略,感兴趣的读者可去探究帕斯卡三角形)。

1.3K30

斯坦福大学新研究:询问愚蠢问题,AI能变聪明

为了帮助 AI 扩展它们对世界的理解,研究人员正试图开发一种方法,让计算机程序既能定位它们的知识空白,还能通过询问如:「水槽是什么形状的?」等愚蠢的问题,以获得答案的方式进行学习。...这个方法是受人类成长过程的启发,这是一个以社交为中介的过程,在这个过程中,儿童通过与知识渊博的成人进行好奇的对话,获得新概念和新文化。...本文设计的智能体通过询问人们在社交媒体上上传的图片来学习视觉概念。它将人们对智能体的反应分解为两个奖励,这两个奖励引导智能体进行更适合的交互,并为其基础模型提供信息。...图 2:本文的智能体在社交媒体上与人们发起的 236000 次互动,显示其问题和回答的多样性。一些问题验证了概念,而另一些问题则询问诸如建筑物类型或对象材质等属性。答案在长度和词汇上差异很大。...虽然有些人直接回答了问题,例如这是一个正方形,但其他人提供了很多背景信息。一些回答还通过使用表情符号、感叹号或诸如嗨,亲爱的之类的短语来表达积极的情绪。

32550
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Swift 基础之可选

    C 和 Objective-C 中并没有可选这个概念。最接近的是 Objective-C 中的一个特 性,一个方法要不返回一个对象要不返回 nil,nil 表示“缺少一个合法的对象”。...// surveyAnswer 被自动设置为 nil 注意:Swift 的 nil 和 Objective-C 中的 nil 并不一样。...有时候在程序架构中,第一次被赋值之后,可以确定一个可选总会有值。在这种情况下,每次都要判断和解析可选值是非常低效的,因为可以确定它总会有值。...这种类型的可选被定义为隐式解析可选(implicitly unwrapped optionals)。把想要用作可 选的类型的后面的问号(String?)改成感叹号(String!...)来声明一个隐式解析可选。 当可选被第一次赋值之后就可以确定之后一直有值的时候,隐式解析可选非常有用。隐式 解析可选主要被用在 Swift 中类的构造过程中,请参考类实例之间的循环强引用。

    78730

    谷歌移动UI框架Flutter入门

    Flutter实际上是一个包含多种内容的软件包,它是用来创建移动2D应用程序SDK的软件开发包,如果你计划在某些游戏中使用3D应用程序,那么Flutter将无法满足你的需求,但如果你的计划是在APP商店中的大多数的...2D应用程序,那么Flutter就是你的选择。...需要注意的是,打勾的地方说明资源下载成功,而感叹号的位置说明资源下载异常,我们需要去解决这些异常的下载,才能使Flutter正常地运行。...解决资源异常问题 我这里因为有了Android的运行环境和Android Studio开发工具,所以都是感叹号,而没有这些东西的同学就会打一个红色的叉,看到红色的叉也不要惊慌失措,只需要将Android...将我们最开始下载的Flutter的解压文件路径设置上去,Dart我们可以不用设置,它会自动去寻找路径。

    1.8K10

    swift 基础语法(常量、变量、数值、布尔型、元组)

    常量和变量 声明常量和变量 常量和变量必须在使用之前声明 使用let关键字声明常量 使用var关键字声明变量 let a = 10 //声明一个名字是 a 的新常量,并赋值为10 var b =...(当你需要存储很大或者很高精度的浮点数时请使用此类型) Float表示32位浮点数(精度要求不高的话可以使用此类型) 类型安全和类型推断 Swift是一个类型安全(type safe)的语言,所以它会在编译你的代码时进行类型检查...一个十进制数,没有前缀, 如let decimalInteger = 17 一个二进制数,前缀是0b,如let binaryInteger = 0b10001 一个八进制数,前缀是0o,如let...unwrapped optionals) 有时候在程序架构中,第一次被赋值之后,可以确定一个可选类型总会有值。...这种类型的可选状态被定义为隐式解析可选类型 把想要用作可选的类型的后面的问号(String?)改成感叹号(String!)来声明一个隐式解析可选类型。

    17110

    Swift系列五 - 可选项

    一、定义可选项 平时开发中,如果我们需要把一个变量置空时只需要把变量赋值一个nil即可: 上面尝试后不行,那怎么把一个变量置空呢? 答案:把变量设置可选类型即可 如何定义可选类型(可选项)?...二、强制解包 可选项是对其他类型的一层包装,可以将它理解为一个盒子: 如果为nil,那么它就是个空盒子; 如果不为nil,那么盒子里装的就是被包装类型的数据; 如果要从可选项中取出被包装的数据(将盒子里装的东西取出来...b a是可选项; b是可选项或者不是可选项; b和a的存储类型必须相同; 如果a不为nil,就返回a; 如果a为nil,就返回b; 如果b不是可选项,返回a时会自动解包。...六、隐式解包 在某些情况下,可选项一旦被设定值之后,就会一直拥有值。在这种情况下,可以去掉检查,也不必每次访问的时候都进行解包,因为他能确定每次访问的时候都有值。 可以在类型后面加个感叹号!...一样,只是加上感叹号后会自动解包,不需要强制解包。 如果num1有值,就会返回10,而不是Optional(10);如果num1为空,就会报错,因为对空的可选类型进行强制解包是会报错的。

    66120

    永久免费的百度语音转字幕的工具

    sample/asrDemo-srt, 在asrDemo2,一个完整的添加视频文件字幕的程序,请读sample/asrDemo-srt/Readme.md文件后,再进行测试。...适合于短语识别。 输入法模型:效果同百度输入法的语音输入。适合于长句识别。 普通话搜索模型同时能识别简单的常用英语语句,效果同手机百度。...:为sdk从用户侧接收这句话总的间隔时间, 即recv_first_pack_time和recv_last_pack_time之差 response_cost:响应时间,为sdk收到用户post来的该句话的第一个包到第一次给出用户识别结果...sdk收到用户post来的该句话的最后一个包到给出用户最终识别结果(可能报错信息)的耗时; recv_first_pack_time和recv_last_pack_time:sdk用户post来的该句话的第一包和最后一包的时间点...string 选填 常用 保存音频文件路径,ASR_PARAM_KEY_SAVE_AUDIO_ENABLE开启后生效,默认路径为程序启动目录下的sdk_save_audio.d里。

    33.7K61

    如何在Windows上使用Python进行开发

    一直以来C#都是微软在编程语言方面最为显著的Tag,但时至今日Python已经从一个小众语言,变成了世界编程语言排行榜排名前列的语言了。...微软再从收购了Github后,在开源社区投入的力度越来越大,所以对于Python的支持,和为Python社区提供更多的贡献,微软本身也承担起了更多的责任。...从git-scm 网站下载并安装适用于 Windows 的 Git。 其中包含了一个安装向导, 该向导将询问一系列有关 Git 安装设置的问题。...使用: len(variable)查找字符串变量的长度和使用的字符数。 这会显示使用了12个字符。 (请注意, 该空格在总长度中被计为一个字符。)...、配置和运行调试器, 以及安装程序包 (例如matplotlib和numpy在虚拟环境中创建图形绘图。

    3.1K30

    javascript 学习小结 JS装逼技巧(一) by FungLeo

    .好记性不如烂笔头,因此写这篇零碎的博文,记一记我学到的一些好玩的东西....简单的新建各种元素 创建各种元素都有相对应的方法,例如,创建一个数组可以这样写var arr = new Array 当然,这样做是对的,但是我英文很烂,并且不喜欢这样的代码.我喜欢的是下面这样的. /...它的各种妙用如下图所示: 如上图所示,波浪号可以将各种东西都转化为数字,为0或者-1. 需要注意的是,~~双波浪号的取整是直接去掉小数点后的小数,而并不是采用的四省五入的计算....哎,没办法,谁叫我基础差呢.经过一番请教,终于知道怎么创建json数据是最方便的. 第一步,创建一个对象. 第二部,往对象里面写值. 第三步,将对象转化为json数据....小结 命名一定要规范,不要尝试使用别人看不懂的命名.有时候,好的命名胜过一切. 如果逻辑很复杂,尝试把复杂的逻辑拆解成一个一个的小逻辑,这样能够更加好的解决问题和排查问题.

    51720

    python3–装饰器

    在Python里装饰器的定义:在程序运行时,增加动态功能的方式,称之为“装饰器”,装饰器本质上也是一个Python函数。 那么问题来了,有可能初学者对这个定义里的函数不理解,不得不多讲一点。...def是固定格式,Hanshu就是函数的名称,(x)就是参数。 接下来,就要旅游购物了,好在有个机器人替我购物,它只能听懂Python语言,我要告诉它购买什么和详细的购买程序。...因为“询价”和“购买成功”动作是一样的,而且我要想在“购买成功”上加一个感叹号,需要加三次才能成功,如果买1000个东西,就要加1000次感叹号了,想想就要累死了。...于是我优化了一下程序,把购买东西Goumai(Dongxi)定义成了一个函数,执行的结果和上一个程序还是一样的,而且“购买成功”还加了一个感叹号,只操作了一次,可以显示三次啊。...答案当然是可以了。 这时“购买”就变成了一个固定的动作,而不是三个步骤,为了让机器人理解,我在“购买”函数里直接定义了这个动作函数。

    1.1K60

    2019DDCTF部分Web Write Up

    简介 本篇为2019年DDCTF部分Web的write up,整体来说,能做的都算是中等难度,就是有些耗时间,其次就是思路的问题了,为了避免太长所以我分两篇来写,不喜勿喷,喷了我也不会理 滴~(题目名字...最后将文件内容包含出来,所以尝试逆向写一个别的文件名,先解密 ?...到这一步就没了,我们从上面可以看到文件名是含有感叹号的,那么怎么办呢,不着急 第三步的操作是,用strreplace()这个函数来进行替换,将config替换为!...,这样一来感叹号就又回来了,所以构造的时候,把config当成感叹号来写就好了 你可以这么写 Flag!...> 这里就是典型的变量覆盖了,给这个php传入两个参数,uid和k,并且内容都会空,这样Php就会把这两个函数都覆盖掉为空,就符合if的条件了 ?

    66130

    intel(r)wireless-ac9462异常笔记本电脑网络无法连接???吐血后总结 :一次解决,史上最全,N种方案

    intel®wireless-ac9462出现黄色感叹号 intel®wireless-ac9560出现黄色感叹号 笔记本联网出现异常 如图所示: 简单介绍:这种情况是无线网卡驱动出现问题 解决方案一...解决方案二: 1.打开设备管理器,在网络适配器的驱动程序页点击更新驱动程序 基本可以解决你的电脑问题,不过还不算彻底根治 选择第一个,自动搜索更新驱动程序软件,如果能够解决你的问题,那么说明可能是你的电脑有最新的驱动...,并非最优解,并且尴尬的在于, 电脑没网可以手机下载路答案是/驱动精灵然后在电脑上安装,不过问题是,驱动精灵和鲁大师都需要联网才能解决这样的问题,问题恰恰在于,有的小伙伴(比如楼主),电脑故障后怎么都不能联网...他就是你的电脑型号,然后你去你电脑厂家官网,输入你的型号,下载你的相对应的驱动器,其实最简单的就是你打电话给客服,告诉他你的型号,他就会很热情的帮你找到相关文件,发在你的邮箱里,hh,然后你就可以运行你下载的驱动的里面有一个...由于楼主用的是华硕飞行堡垒6代,所以在结尾给大家提供一个华硕的客服电话,楼主的记性以及下载的无线网卡驱动。

    26.5K110

    ChatGPT 中文指令指南,教会你如何使用chatgpt实现中文你想要的答案

    告诉我 Egocentric 的词性和音标,并使用中文和英文解释该词的意思,同时告诉我这个词是怎么来的?是如何构造出来的?最后用这个词写 3 句英文例句。...使用 Egocentric、Egomaniac 写一个能帮助我记忆单词含义的英文故事。 使用 英文单词、英文单词 写一个能帮助我记忆单词含义的英文故事。 了解近义词或相近词之间的区别。...了解动词短语搭配 请告诉我跟 make 搭配使用的常见小品词有哪些,并使用这些短语分别写 1 个英文句子。 请告诉我跟 英文单词 搭配使用的常见小品词有哪些,并使用这些短语分别写 1 个英文句子。...我有两个 5kg 的哑铃和 两个 2.5kg 的哑铃,和一个弹力带,但没有健身椅。请为我制定一个锻炼肩膀的健身计划。 描述条件(如有的器械,身体的状况等)请为我制定一个锻炼 部位 的健身计划。 身椅。...请为我制定一个锻炼肩膀的健身计划。 描述条件(如有的器械,身体的状况等)请为我制定一个锻炼 部位 的健身计划。

    47830

    如何退出Vi或Vim编辑器「建议收藏」

    也许有人要您为他们看一下他们的Linux计算机。 您发出诸如crontab -e类的命令,然后vi弹出。 令人惊讶的是,有人将crontab的默认编辑器配置为 vi 。...启动vi和打开文件的命令很简单。 键入vi ,一个空格,然后输入文件名。 按Enter键。 启动的程序可能是vi ,也可能是vim ,即“改进的vi ”。...如果碰巧按下“ i”键或调用插入模式的其他10个键(a,A,c,C,I,o,O,R,s和S)中的任何一个,您会突然看到您正在输入。 您现在处于插入模式。...Press the Enter key when you can see them: 键入一个冒号,字母“ q”和一个感叹号,没有任何空格。 这三个字符应显示在终端的底行的最左端。...感叹号还指示vi 不要保存您可能对该文件所做的任何更改。 如果您在vi一直犯错误而又不知道自己在做什么,则可能不想保存您造成的破坏。

    5K10

    ChatGPT 中文指令指南,教会你如何使用chatgpt实现中文你想要的答案

    告诉我 Egocentric 的词性和音标,并使用中文和英文解释该词的意思,同时告诉我这个词是怎么来的?是如何构造出来的?最后用这个词写 3 句英文例句。...使用 Egocentric、Egomaniac 写一个能帮助我记忆单词含义的英文故事。 使用 英文单词、英文单词 写一个能帮助我记忆单词含义的英文故事。了解近义词或相近词之间的区别。...了解动词短语搭配请告诉我跟 make 搭配使用的常见小品词有哪些,并使用这些短语分别写 1 个英文句子。请告诉我跟 英文单词 搭配使用的常见小品词有哪些,并使用这些短语分别写 1 个英文句子。...你可以将你的喜好告诉 AI,它会根据你的要求,搜寻特定结果给你,并且还能进行多轮对话,可以针对某几个要求进行深度沟通。...我有两个 5kg 的哑铃和 两个 2.5kg 的哑铃,和一个弹力带,但没有健身椅。请为我制定一个锻炼肩膀的健身计划。描述条件(如有的器械,身体的状况等)请为我制定一个锻炼 部位 的健身计划。

    84200

    HTML入门零基础教程(二)

    比如:和,我们称为双标签。标签中对应的第一个标签是开始标签,第二个标签是结束标签。 当然也有特殊的标签必须是单个标签(极少情况),比如:,我们称为单标签。...2.标签的关系 双标签关系可以分为两类:包含关系和并列关系。... 我们可以再尝试着理解:下面所属的代码,html是head和body的父亲,而html和body属于儿子为包含关系,并且head和body是兄弟关系也就是并列关系...文件一点要保存为.html网页格式 (2)那么我们就开始敲代码之路了,首先我们看到的是没有任何单词,一个一个写很费事,那么有了开发工具,我们就可以输入一个感叹号,注意是英文状态下输入,然后选择第一个感叹号...(3)这样我们的HTML基本骨架就已经形成了,就可以写想要的内容了 (4)我们可以尝试尝试 建立网页 (5)建立好之后,可以点击右键,然后用浏览器预览,也可以使用快捷键。

    46830

    Github利用.gitignore文件忽略不需要上传的文件

    在小程序开发过程中,利用gitHub进行项目管理,其中的小程序配置文件会产生冲突,可以使用.gitignore文件配置,在上传gitHub的时候忽略不需要上传的文件。...在项目的根目录下建立.gitignore文件:(以indows系统的git为例) 在根目录右键选择 Git Bash,打开命令行。...*.zip 开头多了一个感叹号,Git会将满足这类规则的文件添加到版本管理中。 为什么要有两种规则呢?...[oa]  *~ 第一行告诉 Git 忽略所有以 .o 或 .a 结尾的文件。 一般这类对象文件和存档文件都是编译过程中出现的,我们用不着跟踪它们的版本。...只匹配一个任意字符; 如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)。

    2.5K10

    Swift Reference Cycle中的weak,unowned,Closure Capture List

    TL;DR(太长不看版) 用weak还是用unowned,和对象的lifetime(生命周期)有关; 如果两个对象的生命周期完全和对方没关系(其中一方什么时候赋值为nil,对对方都没影响),请用weak...上面的情况,可以把它简单理解为Reference Cycle,它会导致内存浪费——内存浪费到一定程度,你的程序可能会crash,所以要避免。下面用官方文档的图示进一步阐述: ? image ▲1....官方文档给出的答案是: Unlike a weak reference, however, an unowned reference is used when the other instance has...对于什么时候用unowned,When to use strong, weak and unowned reference types in Swift and why一文给出类似的答案: The rule...Closures外的常量、变量,这种行为被定义为「capture」,有以下几种语法表现: // 如果什么都不写,直接使用。

    1K30

    Ubuntu18.04美化_乌班图美化

    大家好,又见面了,我是你们的朋友全栈君。 和网上的美化一样,但是我当初跟着博客美化的时候遇到一些问题,按博客的做法无法解决。 所以我自己也写一篇关于ubuntu18.04美化主题的博客。...install gnome-tweak-tool 然后安装完成后我们打开Tweaks(截图如下): 第二步,修改窗口按钮位置(其他地方想优化可根据自己喜好选择): 看第一张图我们会发现shell那里是有一个感叹号的...,我们需要将感叹号去掉才能进行下一步操作。...sudo mv 文件名 目标路径(这里的是/usr/share/themes/) 然后去Tweaks里更换主题–>应用程序即可(我这里直接将应用程序和shell都修改了,还有鼠标光标改成黑色) 第五步...,选择图标icon 和上面的相似,去官网左边栏的icon里选择一个自己喜欢的,我选择的是Cupertino iCons Collection 我下载的文件是Cupertino-KDE.tar.xz,下载完解压再将其移动到

    2.4K10
    领券