【问题标题】:Decode .do URL Request unique ID解码 .do URL 请求唯一 ID
【发布时间】:2020-06-24 14:38:33
【问题描述】:

我正在构建一个 Excel 脚本,它将绕过网站上的表单,并直接在 URL 中解析请求以生成所需的输出(然后将该数据拉入 Excel)。

我一切正常,但部分解决方案是包含一个参数值,该参数值似乎是固定字符和可变字符的组合。该网站使用 .do Java serverlet 文件来处理服务器端请求。该脚本显然对此进行了解码,并在执行之前查找了某些内容。如果生成的代码中有任何值不同,则不会执行。

这里有三个例子。每项工作都成功。我该如何进行解码,以便我可以创建自己的动态代码,而不是一遍又一遍地重复使用相同的 ID?

我的猜测是这需要进行一些基本转换?不确定是否可能,但代码中肯定有一个模式,至少对于第一个和最后几个字符:

1: H4sIAAAAAAAAAL2QTU_DMAyGf824VKrsdKvKwYeqHQIJbTAGO0wcQhq2SN1aJRkfUn48brsDMMQNbm9iW378BAQgERCQ8MxalStvmv1C2WoNjxS66p2WVm2jwhqvrZF976t-km3rRMwjsddv0sWb5mWU5BlwXdBIXExXOceki67Vyjwbda2l07cHbd-HNXHVcMuYdtpvm2rZFLKu-WNCh_1xRFf8zghO0Naup8rtxsWttHL3IOuDZmJBgCEhAQLCuMuTIac0Dxl9IQnn1Nqmyve82su6NK7lbTRcAFlPLwDTcRAMWRnnrVH-GwoeLZXHMjuI-tk_lzQY4JiSq2_kRttPJn7Uhv-uLaHZfLG8jIr5qpzOovvZ1fJ3mevTUzrBhEyIwITY4TEdMhrCB5_buH2_AgAA

2: H4sIAAAAAAAAALWQTU8CMRCGfw1eNjZtF8hymEOziycjKERjiIfaHaHJwjZt8SPpj3d24aCinvT2ttPpPPMkwTnIJLgAcea9USbadndjfL3iD5C66gK1N5us9Dait7p_-4KP2rkgGbWwiK86sHX7PMhVwakuYSAvpneKYt7F4NDYJ2suUQe83qN_O4xhdUtPhrDFuGnrZVvqpqGLEex3xxas6VwAP0FbhZ5K-XVgTnu9vdXNHolYAhcpB8nFJA27PKIseRrDLBXwiSRNwPm2VjsaHXVT2eBoGhw24EVPT_-MZZIEWdsQvTXxC4o4WqqOZXKQ9b3_LulggOIYQjPXa_QfTHyrTfyVNnLhKozaNuFHYzncq2p2NZBlVrJszs4XS7Wc_q5ydbpIpxcE8QlOfCLv6Do4IhP8Hb4znrK-AgAA

3: H4sIAAAAAAAAAG2PS2vDMBCEf016KYiV7AT3sAeRNqdA6YP2EHpQpU0icCyxkvsA_fjKdi-F3mZ3ZplviwRAWSRIhCtmq232YXi07A7whmVyn8iwPV9v2Wdib-bsJ72bGJMS9URk-jJJnMLHqtEdVF_hSu3uXnWVzSRTJOuP3u7JJHoYib-XGuFCjbR4oXwO7jlsTd_XxRrH4feEXJ27f9AOaabSfEoiGjaXF9OPVIkVgiwNKlBQ2kmvF73B-9LhH5Jyg5GD00Otzqa_9SnWNlw-gG6mVyA3bVEV0vmU2dv8A8nXYOAyAQAA

【问题讨论】:

    标签: java url decode uniqueidentifier base-conversion


    【解决方案1】:

    这样做:

    |100=1|101=0&rrcActionRcrd[0]=|100=搜索+条件|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall| 105=未指定|108=0&rrcActionRcrd[0][searchArgs.paramValue]=|2=01|3=2020|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102 =08|103=20164|204=区

    你的第三个例子有意义吗?

    这是第二个:

    |100=2|101=1&rrcActionRcrd[0]=|100=搜索+条件|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall| 105=未指定|108=0&rrcActionRcrd[0][searchArgs.paramValue]=|2=01|3=2019|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102 =08|103=20162|204=区&rrcActionRcrd[1]=|100=区%3A+08|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall |105=search|106=slPager.paramValue|108=0&rrcActionRcrd[1][searchArgs.paramValue]=|2=01|3=2019|4=01|5=2020|6=O|8=specificLease|9= dispDetails|10=0|102=08|103=20162|203=YADON%2C+C.+P.-STATE|204=区&rrcActionRcrd[1][slPager.paramValue]=|1=1|2=10|3 =13|4=0|5=2|6=10

    第一个:

    |100=2|101=1&rrcActionRcrd[0]=|100=搜索+条件|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall| 105=未指定|108=0&rrcActionRcrd[0][searchArgs.paramValue]=|2=01|3=2020|4=01|5=2020|6=O|8=specificLease|9=prodAndTotalDisp|10=0|102 =08|103=20164|204=区&rrcActionRcrd[1]=|100=区%3A+08|101=webapps2.rrc.texas.gov%3A80|102=%2FEWA|103=%2FspecificLeaseQueryAction.do|104=methodToCall |105=search|106=slPager.paramValue|108=0&rrcActionRcrd[1][searchArgs.paramValue]=|2=01|3=2020|4=01|5=2020|6=O|8=specificLease|9= prodAndTotalDisp|10=0|102=08|103=20164|203=NORTH+COWDEN+UNIT|204=区&rrcActionRcrd[1][slPager.paramValue]=|1=1|2=10|3=1|4=0 |5=1|6=10

    这里有一个 Base64 编码的 gzip 流。因此,要解码,您需要将其 Base64 解码为 .gz,然后解压缩。这就是我所做的,我就是这样做的:

    我获取了您的第一个编码块并将其保存到一个文件中。我对其他两个街区做了同样的事情。去https://www.base64decode.org/并加载第一个文件;下载转换后的版本并将其保存为 .gz 扩展名。对其他两个文件做了同样的事情。然后我将它们压缩并得到解码结果。我确实对第一个和第二个块有一些问题,但这与它在页面中的显示方式有关。一旦我查看了页面的源代码并从那里复制它,我就没有问题了。

    您必须生成正确的格式,这应该很容易,然后您需要对其进行 gzip 压缩,然后对其进行编码。它会起作用的。

    【讨论】:

    • 我明白了,这是查询字符串的重复。我想我需要阅读将 Base64 解码为 .gz 的内容。你对这种方法足够熟悉吗?这里的目的是什么,使用基本转换值?由于我在 Excel 中,我可以使用 VBA 来解码吗?或者,更确切地说,生成我自己的,现在我们可以看到它在做什么?您是否有一个示例链接,以实际执行您为解码它所做的工作?
    • 这里要特别提一下,这不是标准的 Base64 编码,而是 URL 安全的编码:+ 和 / 被 - 和 _ 代替。无论如何,您都可以使用gchq.github.io/CyberChef 对这些字符串进行编码:使用 RECIPE: From Base64 with "A-Za-z0-9-_=" 并作为第二个 Gunzip。然后将您的输入粘贴到 INPUT 中。瞧!
    • 我没有成功使用 Cyber​​Chef 获取查询字符串并应用 gzip + Base64 生成与我在上面看到的模式相似的密钥。您的示例可以解码,但是我缺少哪一步进行编码(在根据需要更改查询字符串后复制/生成我自己的)?我也想在 VBA 中做这个研究,但还没有。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多