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

渗透测试 | 突破前端JS加密限制

最近由于工作需要,在搜索资料的时候,学到了很多爬虫大佬们的关于JS逆向、APK逆向、代码分析等方面的经验和技巧,后续会分部分记录并总结下来。...1.1 对称加密 常用算法:DES、DES3、AES 根据密钥长度不同又分为:AES-128、AES-192、AES-256 其中AES-192和AES-256在Java中使用需获取无政策限制权限文件...加密/解密使用相同的密钥 加密和解密的过程是可逆的 1.2 非对称加密 常用算法:RSA 使用公钥加密,使用私钥解密 公钥是公开的,私钥保密 加密处理安全,但是性能极差,单次加密长度有限制 RSA既可用于数据交换...所以我们要保证在签名时候的数据和提交上去的源数据一致,这种算法特喜欢在内部加入时间戳 0x02 JS逆向流程 以登录为例的基本流程: 如果网页有跳转,必须勾选preserve log(F12-Network...,bytes :return: 解密后的字符串 """ secret_key = self.key iv = self.iv k

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

有限字符下的任意命令执行总结

文章源自【字节脉搏社区】-字节脉搏实验室 作者-purplet 15位可控字符下的命令执行 ?...因为只能传入14个字符,但是没有限制命令执行的次数,所以我们的思想可以通过Linux下的>符号与>>符号写入一段一句话木马到指定文件。 ?...经测试上述这样的一句话木马(经过换行)是可以命令执行的,所以我们可以通过传参构造出这样的一句话木马,不断传入以下Payload: ? ? 7位可控字符的命令执行 ? 预备知识: ?...只限3个字符的shell_exec,依然利用通配符 * 表示将ls下面的文件执行,如果第一个是命令就直接执行命令,后面的当参数,与前几点的原理类似 首先ls查看当前目录下有哪些文件 ?1=ls ?...只存在s开头的和z开头的文件,Linux中文件排序按照26个英文字母顺序排放,所以我们依然利用前几种字符限制的方法,通过>写入一个以命令名命名的文件,如:nl(读取文件带上行)od(八进制显示输出),但这样的命令前提是其第一个字母必须在当前文件名中排到第一位

1.2K40

干货 | 突破disable_functions限制执行命令·下

在该漏洞的帮助下,远程攻击者将能够实现PHP沙箱逃逸,并执行任意代码。...核心的原因在于在输入的过滤中没有严格限制边界,没有做合法化的参数判断。 攻击者只需将恶意代码写入到环境变量中,传到服务端,触发服务器运行bash脚本即可执行恶意代码。...该漏洞可以直接绕过 ghostscript 的安全沙箱,导致攻击者可以执行任意命令/读取任意文件。...成功的攻击可能允许攻击者绕过其他禁用的exec 受影响软件中的功能,攻击者可利用这些功能在目标系统上执行任意shell命令。...当nginx配置不当时,会导致php-fpm远程任意代码执行。 攻击者可以使用换行符(%0a)来破坏fastcgi_split_path_info指令中的Regexp。

3K30

利用Winrm.vbs绕过白名单限制执行任意代码

这意味着若将cscript.exe拷贝到攻击者可以控制的目录下,并将恶意的XSL文件也置于相同路径中,攻击者将可以绕过签名保护而执行任意代码。...DotNetToJScript生成的Payload,导致攻击者可以利用该手法执行任意不具有签名的代码。...若要利用本文的绕过方法,攻击者不能修改winrm.vbs的内容 通过在命令行中寻找'winrm.vbs'字符串这种防御手段是不足的,因为攻击者可以任意修改winrm.vbs的文件名。...winrm.vbs通过验证WScript.FullName是否包含了字符串'cscript.exe'这一点来验证其自身是被cscript.exe执行的。...这个验证本身是不够完善的,因为它仅仅检查可执行文件的路径中是否包含'cscript.exe'字符串。

1.6K40

Excel揭秘25:突破数据有效性列表的字符限制

使用逗号分隔的字符串 2. 使用单元格区域 然而,如果使用逗号分隔的字符串作为数据列表的来源,你会发现这样的字符串的字符数被限制为255个字符,超过此限制字符串根本无法输入到数据来源中。...当然,这样的限制不会带来问题,因为你还可以使用单元格区域中的数据作为数据列表来源。 但是,有趣的是,使用VBA代码编程,却也可以给数据列表提供大于255个字符字符串。...下面的代码创建了一个逗号分隔的344个字符字符串,并在A1中创建了一个数据有效性列表。...复修记录并没有告诉我们数据有效性列表被移除的原因,但可以肯定的是,列表字符数超出了字符限制。...你可能会说,我可以在Workbook_Open事件中添加长列表,然后在Workbook_BeforeSave事件中将其删除以避免修复问题,但是使用代码绕过限制字符数没有很好的用处。

2.4K20

某入群题之命令执行字符限制绕过(WEB100)

由于之前刚好做了下hitcon的两个命令执行绕过,问了下pcat能不能写这篇文章。然后他说随便我…..这里就记录一下。看题! ? 类似上次的两题,只是这次字符长度限制变成了20。...要是能执行你也找不到自己的目录2333。 为了方便做题也把各自ip给输出了,只要你自己md5一下就行。 或者使用pwd ?cmd=pwd> ../1.txt 当然这是最简单的一步。...虽然有字符限制,但是可以利用括号这里拼接换行起来。 要写post一句话的话也简单,先写入一个普通文件,然后cat写入php文件。 ? 这里注意一下,echo字符串要使用单引号,双引号的话会转义掉。...0X02.用反斜杠\拼接执行命令(gg) 我们先来看’\’的作用,它不仅仅可以转义字符,若在命令最后,可以起到拼接的作用。 ? ok直接echo写一句话。 ?...之前的命令执行绕过也是这个思路。 ? 0X04.命令执行只是门槛,内网在等着你!(WEB400) 加油吧少年! 师傅们有什么骚思路或者什么建议欢迎指点。

91240

CTFweb类型(十九)15位、7位可控字符下的任意命令执行

​​某些特殊情况下命令执行的Getshell中对应某个函数的内容可控,可控字符长度分为长可控和短可控。我们先来看15个字符可控。...这里就是十四位,刚好可以执行。...19-14.png 七个字符 19-15.png 执行的结果作为内容输出类似文件名,如果存在,会直接覆盖原有文件,如果不存在,会生成这个文件,并把前面的内容输出到文件里面。...如果ls是命令,l并不是命令,理论上执行不了,但是还是会去执行后面输出的这个环节。虽然命令不存在,但也会去生成a文件。...如果能控制文件名就能控制a,这中间欠缺的就是顺序,sh后面跟一个文件名称的话,而且里面是可执行的内容,就能够去执行。如果所有内容都写入a,内容可控,再用sh写入a,构成了一句shell。

1.8K20

CTFweb类型(二十)5位、4位可控字符下的任意命令执行

​​这次我们讲一个5个字符的,这个题目是黑客2017的一道题目。 20-1.png 网上解释得非常多,这边也讲一下代码其实比较简单跟之前的结构类似,传递的字符串小于5位就能够去执行。...最后的话就是通过文件名来构成一个文件0,然后再去sh去执行0的一些内容,但是ls -t,这里有1234567有7位,这个7位的长度已经超过了它给我们5位的限制,所以说要做的其实就是突破。...,这样可以省一点字符。...20-5.png 你会发现,好像并没有去执行我们想要的东西,它执行的其实只是一个ls这个东西。...你会发现*的结果的话,它其实就是它匹配到的*是匹配所有东把它匹配到的东西合在一起就是相当于变成一句一个字符串,然后这个字符串当中命令去执行

1.5K20

从七个字符长度的任意命令执行到GetShell

分析 直接写shell是不可能的,因为 1=echo 1>1 都8个字符了,已经超了 下载一个shell也是不可行的,1=wget a.cn也超了。 所以需要想其他的办法。...思路是这样的: 我们把一条长的命令拆分为多个小段,把每一段都存为文件名,然后用 1=ls >a,创建文件a,执行a来getshell。...虽然php一条语句读到分号才算结束,中间可以有多个换行,换行不影响执行,但是换行也是都限度的,就是关键词是不可再拆分的,比如: <?...` $_GET[1] `; 这是可以运行的,没有问题,但是如果在$_GET[1]中任意一个地方添加一个换行,都是没办法运行的 <?...(**注意:a.cn需要换成你的域名,自己做拆分的时候需要注意一点,.不能放在文件名开头,因为以.开头的文件名是隐藏文件,ls是列不出来的) 最后还有一个问题,就是ls 列出来文件名是按照字符字典[a-z

42220

XSS学习笔记【二】

对这些字符进行转换编码或者转义,让他们不直接出现在脚本中,从而使浏览器不会去执行这段脚本 限制 玩过XSS的朋友应该都知道,精心构造一个攻击链接往往需要较长的字符串。...那我干脆就对提交上来的数据长度做一个限制,这样就能解决一个即使真的存在一个XSS漏洞,但由于数据长度的限制而导致这个漏洞无法真正被利用的情况。 常见绕过技术 1....eval()函数是一个神奇的函数,可以用来计算一个字符串,将字符串变为js的表达式或者可执行语句,String.fromCharCode()函数则是将一段Ascii码转化为字符串。...针对限制 既然限制了数据长度,那我们可以从外部引用一个自己写的js,而不是直接全部写在请求当中。...,可以突破对数据长度的限制

1.4K00
领券