草庐IT

中间人攻击

全部标签

php - 为什么中间件不实现接口(interface)?

在LaravelIlluminate\Contracts\Routing\Middleware。现在,用artisan创建的中间件不再实现任何东西。和thecontractwasremoved没有解释(除非我弄错了)。有原因吗? 最佳答案 根据laravel5.2升级指南officialdocumentation在弃用部分下:Illuminate\Contracts\Routing\Middleware契约已被弃用。您的中间件不需要契约(Contract)。此外,TerminableMiddleware契约(Contract)也已弃

php - PHP 的 addslashes 容易受到 sql 注入(inject)攻击吗?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Whatdoesmysql_real_escape_string()dothataddslashes()doesn't?我一直在查看关于PHP的addslashes函数如何/为什么易受sql注入(inject)攻击的文章。我读过的所有内容都说特定的mysql编码类型(default-character-set=GBK)存在问题,或者如果启用了magic_quotes则存在问题。但是,在这种情况下,我无法突破addslashes()函数并执行一些恶意操作-例如以管理员身份登录。$user=addslashes(

php - 访问 https 资源时,PHP 的 fopen() 是否可以防止典型的攻击?

如果我使用PHP的fopen()函数从HTTPS网站检索数据,这就是所谓的安全HTTPS连接。即它是否提供针对中间人和窃听攻击的保护? 最佳答案 不是默认的,不是。它将始终提供某种形式的保护以防止简单的窃听攻击,因为数据将始终被加密(只要您连接到的SSL服务器允许至少使用一种加密密码-是的,空加密密码是在HTTPS连接中允许:roll-eyes:)但是,默认情况下,它不会防止中间人攻击,因为它不会验证服务器的证书,因此您无法确信您已连接到预期的目标服务器。可以打开证书验证。为此,您需要提供一个根证书包,并使用fopen的第四个参数来

php - 在 Laravel 5 中间件中操作 JSON

我有一个发送到Laravel5应用程序的Ajax请求。但是在将JSON发送到Controller之前,我需要重新格式化/更改/...JSON。有没有办法在中间件中操作请求体(JSON)?isJson()){$json=json_decode($request->getContent(),TRUE);//manipulatethejsonandsetitagaintothetherequest$manipulatedRequest=....$request=$manipulatedRequest;}\Log::info($request);return$next($request);}}

php - 如何在 octobercms 中创建中间件

我是OctoberCMS的新手,但我对Laravel有一定的了解。在Laravel中很容易创建中间件并将多个中间件分组。在OctoberCMS中,我还找不到合适的指南或满意的答案。有谁知道如何在OctoberCMS中创建中间件和组合多个中间件? 最佳答案 在您的插件文件夹中,使用文件Plugin.php来设置您的中间件您必须像这样在启动函数中声明:publicfunctionboot(){//Registermiddleware$this->app['Illuminate\Contracts\Http\Kernel']->pushM

java - 在推土机中使用中间集合映射深层属性

假设我有以下类(class)publicclassBaz{privateListfoos=newArrayList();}publicclassFoo{privateStringstring;}publicclassTarget{privateListfooStrings=newArrayList();}有没有我可以使用的映射,给定一个Baz,将其映射到目标类并获取包含在Baz中的foo中的字符串列表?以下映射不起作用BazTargetfoos.stringfooStrings因为string不是foos(列表类型)的属性。我本以为Dozer会足够聪明,如果它在深度映射中遇到一个集合,

java - 保护 Thrift 服务器免受 POODLE SSL 漏洞的攻击

为了保护我的Thrift服务器免受最近发现的SSLv3vulnerability,我明确说明应该为服务器套接字启用哪些协议(protocol):TServerSocketsocket=TSSLTransportFactory.getServerSocket(...);SSLServerSocketsslServerSocket=(SSLServerSocket)socket.getServerSocket;sslServerSocket.setEnabledProtocols(newString[]{"TLSv1.1","TLSv1.2"});但是,即使使用TestSSLServer进

java - 如果将 NxM 乘法表按顺序排列,中间的数字是什么?

如果我有一个乘法表,例如3x5:123452468103691215我把所有这些数字按顺序排列:122334456689101215中间的数字是多少?在这种情况下,它是5。N和M总是奇数,所以只能有一个答案。有没有快速的解决方案?我正在寻找O(NlogNM)行中的内容这是某种家庭作业,但我真的迷失了这个。我提出了一些想法,但它们都有一些缺点:publicclassTable{publicstaticvoidmain(String[]ar){Scannerscanner=newScanner(System.in);intw=scanner.nextInt();inth=scanner.n

java - 插入到 ArrayList 的中间是移动对象还是引用?

将一个元素添加到JavaArrayList的末尾应该花费O(1)时间。然而,向中间添加一个元素必须将右半部分移动一个以维持顺序。这应该花费O(n)时间(实际上O(n/2)简化为O(n))。我的问题是:在原始内存中,这种移位是移动驻留在ArrayList中的对象本身,还是仅仅移动指向它们的引用?无论是哪种,时间复杂度都是一样的,但开销可能大不相同。将一堆巨大的对象移到一边以为中间的一个对象腾出空间可能比仅在内存中移动一些int大小的引用要大得多。所以:它是哪个?我倾向于猜测是引用被移动了,因为JavaList保存对堆上对象的引用,这些对象在内存中可能处于任何“顺序”。我对以上所有内容的表

java - 使用充气城堡使用中间证书正确创建新证书

所以我的问题如下,基本上我想使用充气城堡(jdk16版本1.46)创建一个证书链。我对充气城堡和java.security总体上还是比较陌生的,所以如果我的方法可能完全错误,但无论如何这就是我所做的:到目前为止,我能够创建一个自签名证书,用作根证书。这是使用以下代码完成的://-----createCAcertificatewithkeyKeyPaircaPair=Signing.generateKeyPair("DSA",1024,null,null);这基本上创建了key对,如果需要,两个空选项用于提供者和安全随机数。Map>caMap=newHashMap>();caMap.pu