RSA应用层数据包
一.首先挑选数据包
1.筛选TCP包
2.按长度大小来区分
3.然后主要查看get、post、http包一些明确写着图片的包或者长度较小的包可以不去关注。其中js文件也一般不会去查看。
4.找到一些post的相关demo包点击查看
5.找到长度较长的连续包,右击TCP→追踪流→TCP流(可以看到html的相关页面UTF-8)
测试用户1身份鉴别(真实性)
签名值
userSignedData
base64:vaGiK8qFK3Fp4j6U77ARlMzAcTU8vDmCziRC2mHKPLYsxqSTlMzn7297OYgV0GDwZ2/YHVTRdV4HYuXMOmFm11xX4Tqnjd6pk2S6bDWJAA0w8QOUv+RJlzZ9fx/MsPjXoMcGO+8BD/jRugxYyRRqMpMpfvpOyyT409kXoLCeQDxwEYEkIRAysFQ5zfmIP5SpO1R1HHrl62ByYmmyJLzDzyP7At30+XlMEoR0nMK3zreHrnT9VZ3SeYSdEq0CuuPWXB3AX5280opicKrImP2PBAbC78F2ttqXEidzHFrS+71ksKbemy6qs0ZC8FetR8DcQqsdB8Byt6i5uQyGchXI9w==
16进制:
bda1a22bca852b7169e23e94efb01194ccc071353cbc3982ce2442da61ca3cb62cc6a49394cce7ef6f7b398815d060f0676fd81d54d1755e0762e5cc3a6166d75c57e13aa78ddea99364ba6c3589000d30f10394bfe44997367d7f1fccb0f8d7a0c7063bef010ff8d1ba0c58c9146a3293297efa4ecb24f8d3d917a0b09e403c70118124211032b05439cdf9883f94a93b54751c7ae5eb60726269b224bcc3cf23fb02ddf4f9794c1284749cc2b7ceb787ae74fd559dd279849d12ad02bae3d65c1dc05f9dbcd28a6270aac898fd8f0406c2efc176b6da971227731c5ad2fbbd64b0a6de9b2eaab34642f057ad47c0dc42ab1d07c072b7a8b9b90c867215c8f7
待签名数据
strServerRan
怎么确定待签名数据是ascll码还是base64编码呢?
首先可以从签名值来反推,复制一段签名值数据到wireshark中进行搜索,搜索框如果是红色底可以删除一个字符来解决。
然后观察搜索到的数据包的上下几个数据包查找看看有没有可能存在证书或者其他内容从而找到待签名数据。然后删除前后多余的签名值
base64:yXC9xxpteyoK8FBg3wcLTszdcadQ+ZDT
ascll转16进制:795843397878707465796F4B384642673377634C54737A64636164512B5A4454
公钥
strServerCert:这里的公钥数据不能直接被解析,
第一步:需要将数据复制下来在电脑自带的.cer下查看证书状态。查看证书链、有效期、CRL的地址。
第二步:复制证书中公钥的PEM格式,放入https://the-x.cn/zh-cn/cryptography/rsa.aspx中进行编码格式化。
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEA0WrpT+GXqs3NB+w0c8QtgNy4MCix8OWYixchexCjijipAwrYHt2P
BX8MORmJhYjAmncEL72NF0ZV9KM3RRyzv8pcraG7Chz9rjUQsfTeH01t62o6qETk
Bwa1npfCyasP5wOUX+e97/Y85lctaVjlf4OaKAvz8gxtCtDfjrU+pEFYfGXnsZEZ
qk2fUoCGl2y0MERlehr08Mxprs3hHFlOAhKIkQb3zqxPYXphmWQSBmvlNVmMdvQ+
r6ERakXkGKEfZzEop+oY90dQdLlCpyJ5CI3ojQbaWTDml/mALrK9I/Cnx2rj9jud
YsuDIwwlrXU49TbyqJ7c30NGqFZIwCR/MwIDAQAB
-----END RSA PUBLIC KEY-----
验签
如果上面三个数据都没有问题,但是验签还是出现了失败,那么问题只能是在算法选择上,证书上的签名算法并不能完成验签可能采用了其他的验签方法,逐个试试签名算法后就可以了。