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

渗透测试 | 信息收集常用方法合集

目录

一、关于域名

1.子域名收集

a.搜索引擎查找

b.在线查询

c.工具

d.SSL/TLS证书查询

2.端口型站点收集

3.目录文件扫描

a.目录扫描工具

b.github搜索

c.google搜索

d.在线网站

e.文件接口工具

4.旁站和C段

a.旁站查询

b.C段查询

5.网站技术架构信息

a.基础知识

b.网站头信息

6.CMS识别

二、关于IP

1.CDN

a.CDN检测

b.CDN绕过

2.主机发现

a.二层发现

b.三层发现

c.四层发现

3.操作系统识别

4.端口扫描

5.服务探测

a.SNMP服务

b.SMB服务

c.SMTP服务

6.其他识别

三、其他技术

1.搜索引擎

a.Google语法

b.Shodon语法

c.Fofa语法

2.whois查询

a.在线网站查询

b.反查邮箱

c.注册人反查

d.备案查询

3.隐藏域名hosts碰撞

四、参考文章

免费领取安全学习资料包!​编辑


简述

几乎每一个学习渗透的安全人员,都会被告知,信息收集是渗透测试的本质,那事实果真如此嘛?答案是,是的!信息收集作为渗透测试的前期主要工作,说白了叫做确定目标,以达到制作渗透计划的目的,这是非常重要的,甚至有的时候,仅仅通过信息收集,就可以拿到目标的shell了。

其实信息收集也是有分类的:分为主动信息收集+被动信息收集。主动信息收集,说白了,就是直接访问、扫描网站,这种流量将流经网站,不可避免的留下了自己来过的痕迹;而被动信息收集呢,则是利用第三方的服务对目标进行访问了解,比如利用搜索引擎Google、Shodon等等。

收集的内容就有五花八门了,比如whois信息、C段网站、服务器系统版本、容器版本、程序版本、数据库类型、二级域名、防火墙、维护者信息等等,在我看来,收集的内容其实就两种:域名、IP。

一、关于域名
1.子域名收集
  • 收集子域名可以扩大渗透范围,获得更多有关目标公司的资产信息,同一域名下的二级域名都属于目标范围,表现形式:域名加前缀,例如:域名 zkaq.cn 加前缀,abc.zkaq.cn。

a.搜索引擎查找
  1. FOFA(https://fofa.so/) title="公司名称" ; domain="zkaq.cn"

  2. 百度(https://www.baidu.com/s):intitle=公司名称;site:zkaq.cn

  3. Google(https://www.google.com/):intitle=公司名称;site:zkaq.cn

  4. 钟馗之眼(https://www.zoomeye.org/) site=域名即可 ;hostname:baidu.com

  5. shodan(https://www.shodan.io/):hostname:"baidu.com"

  6. 360测绘空间(https://quake.360.cn/) :domain:"zkaq.cn"

b.在线查询
  1. 站长之家:http://tool.chinaz.com/

  2. 在线子域名查询:https://phpinfo.me/domain/

  3. 子域名扫描:https://www.t1h2ua.cn/tools/

  4. dnsdumpster:https://dnsdumpster.com/

  5. 查询网:https://site.ip138.com/

  6. 爱站:http://dns.aizhan.com

c.工具
  1. 1. 子域名挖掘机: 图形化的使用方式。

  2. 2. SubDomainBrute工具: python3 subDomainsBrute.py -t 10 zkaq.cn -f subnames_full.txt -o 111.txt

  3. 3. Sublist3r工具 python3 sublist3r -t 10 -b -d zkaq.cn

  4. 4. OneForALL工具:python3 oneforall.py --target zkaq.cn run

  5. 5. Wydomain工具:python wydomain.py -d zkaq.cn -o zkaq.txt

  6. 6. FuzzDomain工具: 图形化的使用方式。

d.SSL/TLS证书查询
  1. SSL/TLS安全评估报告:https://myssl.com

  2. crt.sh:https://crt.sh/

  3. SPYSE:https://spyse.com/tools/ssl-lookup

  4. censy:https://censys.io/

2.端口型站点收集
  • 收集端口型站点和收集子域名是一样的,都是扩大渗透范围,获得更多有关目标公司的资产信息,表现形式:域名后加【:端口号】,例如:域名 zkaq.cn 加后缀 zkaq.cn:8080。

图片

3.目录文件扫描
  • 目录扫描可以扫出来非常多重要的资源,比如目录型的站点,后台,敏感文件,比如.git文件泄露,.svn文件泄露,phpinfo泄露等等,表现形式:域名后加路径,例如:域名 zkaq.cn 加后缀 zkaq.cn/admin/admin.php。

图片

a.目录扫描工具
  1. 御剑工具:图形化的使用方式。

  2. 7kbstorm工具:图形化的使用方式。

  3. dirbuster工具:图形化的使用方式。

  4. dirmap工具:python3 dirmap.py -i https://bbs.zkaq.cn -lcf

  5. dirsearch工具:python3 dirsearch.py -u https://www.zkaq.cn -e php

  6. gobuster工具:gobuster dir -u "https://bbs.zkaq.cn" -w "/root/tools/DirBrute/dirmap/data/fuzz_mode_dir.txt" -n -e -q --wildcard

b.github搜索
  1. in:name huawei #仓库标题中含有关键字huawei

  2. in:descripton Huawei.com #仓库描述搜索含有关键字huawei

  3. in:readme huawei #Readme文件搜素含有关键字Huawei

  4. smtp 58.com password 3306 #搜索某些系统的密码

c.google搜索
  1. 密码搜索:

  2. site:Github.com sa password

  3. site:Github.com root password

  4. site:Github.com User ID='sa';Password

  5. site:Github.com inurl:sql

  6. SVN 信息收集

  7. site:Github.com svn

  8. site:Github.com svn username

  9. site:Github.com svn password

  10. site:Github.com svn username password

  11. 综合信息收集

  12. site:Github.com password

  13. site:Github.com ftp ftppassword

  14. site:Github.com 密码

  15. site:Github.com 内部

d.在线网站
  1. 乌云漏洞库:https://wooyun.website/

  2. 网盘搜索:

  3. 凌云搜索 https://www.lingfengyun.com/

  4. 盘搜搜:http://www.pansoso.com/

  5. 盘搜:http://www.pansou.com/

e.文件接口工具

1.jsfinder:https://gitee.com/kn1fes/JSFinder

2.Packer-Fuzzer: https://github.com/rtcatc/Packer-Fuzzer

3.SecretFinder:https://gitee.com/mucn/SecretFinder

4.旁站和C段
  • 旁站:同一个服务器内的站点。

  • C段:同网段,不同服务器内的站点

a.旁站查询
  1. 站长之家:http://stool.chinaz.com/same

  2. 在线:https://chapangzhan.com/

  3. 搜索引擎:fofa: ip="1.1.1.0/24"

b.C段查询
  1. 1. webscan:https://c.webscan.cc/

  2. 2. Nmap:

  3. 3. msscan:

5.网站技术架构信息
  • 了解网站的基础架构信息,能够帮助我们更有信心的去测试目标系统。

a.基础知识
  1. 只列出一些↓:

  2. 常见的脚本类型语言:asp、php、aspx、jsp、cgi等等

  3. 网站类型:电商(偏向于业务逻辑漏洞)、论坛(站点层漏洞、逻辑类漏洞)、门户类(综合类漏洞)等等

  4. 数据库:access、mysql、mssql、oracle、postsql等等

  5. 源码与数据库组合:asp+access、php+mysql、aspx+mssql、jsp+mssql、oracle、python+mongdb等等

  6. 除了这些外,还有加密的结构、目录结构、常见端口号及对应的服务等等这些都需要再进行了解。

b.网站头信息
  1. 1.F12 , 浏览器内获取查看

  2. 2.在线网站:http://whatweb.bugscaner.com/look/

  3. 3.插件:Wappalyzer

  4. 4. curl命令查询头信息:curl https://bbs.zkaq.cn -i

6.CMS识别
  • CMS可以说指的是网站的源码,如果能识别出一个网站使用的哪一种CMS的话,那么可以通过搜索引擎去发现相应的漏洞,若网站管理员没有处理的话,则可以直接突破站点。

  1. 1.云悉:https://www.yunsee.cn/

  2. 2.潮汐指纹:http://finger.tidesec.net/

  3. 3.whatweb:http://whatweb.bugscaner.com/look/

  4. 4.github查找:https://github.com/search?q=cms识别

  5. 5.whatcms:whatweb bbs.zkaq.cn

  6. 6.cmsIdentification:python cmsIdentification.py https://bbs.zkaq.cn/


二、关于IP

1.CDN
  • CDN可以说是一种资源服务器,不仅可以加速网站访问,还可以提供waf服务,如防止cc攻击,SQL注入拦截等多种功能,除此之外,还可以隐藏服务器的真实IP,cdn服务会根据你所在的地区,选择合适的线路给予你访问,所以如何绕过CDN就十分重要了。

a.CDN检测
  1. 使用全球ping:不同的地区访问有着不同的IP,这样就确定了该域名使用了cdn了

  2. http://ping.chinaz.com/

  3. https://ping.aizhan.com/

  4. https://www.17ce.com/

b.CDN绕过
  • 绕过的核心还是hosts绑定,当发现ip后,可以尝试nc端口探测,也可以用nmap进行服务探测,如果像正常的服务器,就可以模糊确定是真实IP。若发现真实ip,可进行hosts绑定,绕过CDN的防御,直接发起渗透,也可以进行IP反查,通过反查的网站来渗透。

  1. 1. 国外dns获取真实IP:部分cdn只针对国内的ip访问,如果国外ip访问域名 即可获取真实IP。

  2. https://www.wepcc.com/

  3. http://www.ab173.com/dns/dns_world.php

  4. https://dnsdumpster.com/

  5. https://who.is/whois/zkaq.cn

  6. 2. DNS历史绑定记录

  7. https://dnsdb.io/zh-cn/ # DNS查询,查看A记录有哪些,需要会员。

  8. https://x.threatbook.cn/ # 微步在线,需要登录。

  9. https://viewdns.info/ # DNS、IP等查询。

  10. https://tools.ipip.net/cdn.php # CDN查询IP

  11. https://sitereport.netcraft.com/ # 记录网站的历史IP解析记录

  12. https://site.ip138.com/ # 记录网站的历史IP解析记录

  13. 3. 被动获取:让目标连接我们获得真实IP。比如网站有编辑器可以填写远程URL图片,或者有SSRF漏洞。

2.主机发现
a.二层发现
  • 主要利用arp协议,速度快,结果可靠,不过只能在同网段内的主机。

  1. arping工具:arping 192.168.1.2 -c 1

  2. nmap工具:192.168.1.1-254 –sn

  3. netdiscover -i eth0 -r 192.168.1.0/24

  4. scapy工具:sr1(ARP(pdst="192.168.1.2"))

b.三层发现
  • 主要利用ip、icmp协议,速度快但没有二层发现快,可以经过路由转发,理论上可以探测互联网上任意一台存活主机,但很容易被边界防火墙过滤。

  1. ping工具:ping 192.168.1.2 –c 2

  2. fping工具:fping 192.168.1.2 -c 1

  3. Hping3工具:hping3 192.168.1.2 --icmp -c 2

  4. Scapy工具:sr1(IP(dst="192.168.1.2")/ICMP())

  5. nmap工具:nmap -sn 192.168.1.1-255

c.四层发现
  • 主要利用tcp、udp协议,速度比较慢,但是结果可靠,可以发现所有端口都被过滤的存活主机,不太容易被防火墙过滤。

  1. Scapy工具:

  2. sr1(IP(dst="192.168.1.2")/TCP(dport=80,flags='A') ,timeout=1)) #tcp发现

  3. sr1(IP(dst="192.168.1.2")/UDP(dport=33333),timeout=1,verbose=1) #udp发现

  4. nmap工具:

  5. nmap 192.168.1.1-254 -PA80 –sn #tcp发现

  6. nmap 192.168.1.1-254 -PU53 -sn #udp发现

  7. hping3工具:

  8. hping3 192.168.1.1 -c 1 #tcp发现

  9. hping3 --udp 192.168.1.1 -c 1 #udp发现

3.操作系统识别
  • 知道目标存活主机的操作系统后,可以依据操作系统来实施针对性的渗透测试。

  1. 1.TTL值:Windows(65~128),Linux/Unix(1-64),某些Unix(255)

  2. 2.nmap工具:nmap 192.168.1.1 -O

  3. 3.xprobe2工具:xprobe2 192.168.1.1

  4. 4.p0f工具:使用后,直接访问目标即可

4.端口扫描
  • 端口探测可以发现目标服务器上开启的网络服务以及应用程序,这些都是更具体的一些攻击面。

图片

 
  1. scapy工具:

  2. sr1(IP(dst="192.168.1.1")/UDP(dport=53),timeout=1,verbose=1) # UDP端口扫描

  3. sr1(IP(dst="192.168.1.1")/TCP(dport=80),timeout=1,verbose=1) # TCP端口扫描

  4. nmap工具:

  5. nmap -sU 192.168.1.1 -p 53 # UDP端口扫描

  6. nmap -sS 192.168.1.1 -p 80 # 半连接tcp扫描

  7. nmap -sT 192.168.1.1 -p 80 # 全连接TCP扫描

  8. nmap 192.168.1.1 -sI 192.168.1.2 -Pn -p 0-100 # 僵尸扫描

  9. dmitry工具:dmitry -p 192.168.1.1

  10. nc工具:nc -nv -w 1 -z 192.168.1.1 1-100

  11. hping3工具:hping3 192.168.1.1 --scan 0-65535 -S

5.服务探测
  1. nc工具:nc -nv 192.168.1.1 22

  2. dmitry工具:dmitry -pb 192.168.1.1

  3. nmap工具:

  4. nmap -sT 192.168.1.1 -p 22 --script=banner

  5. nmap 192.168.1.1 -p 80 -sV

  6. amap工具:

  7. amap -B 192.168.1.1 1-65535 | grep on

  8. amap 192.168.1.1 20-30 -qb

a.SNMP服务
  • SNMP是简单网络管理协议,由于经常被管理员错误配置,导致很容易造成系统的信息泄露,可以说是“信息的金矿”。

  1. onesixtyone工具:onesixtyone 192.168.1.1 public

  2. snmpwalk工具:snmpwalk 192.168.1.1 -c public -v 2c

  3. snmpcheck工具:snmpcheck -t 192.168.1.1 -c private -v 2

b.SMB服务
  • smb是一个协议名,它能被用于Web连接和客户端与服务器之间的信息沟通。默认开放,实现复杂,实现文件共享,这也是微软历史上出现安全问题最多的一个协议。

 
  1. nmap工具:nmap -v -p139,445 --script=smb-check-vulns --script-args=unsafe=1 192.168.1.1

  2. nbtscan工具:-r 192.168.1.0/24

  3. enum4linux工具:enum4linux -a 192.168.1.1

c.SMTP服务

6.其他识别


三、其他技术

1.搜索引擎
a.Google语法
  • SMTP是一种提供可靠且有效的电子邮件传输的协议。如果能发现目标系统的邮

  • 箱账号,那么可以进行相关的攻击,比如钓鱼等。

  •  
  • nc工具:nc -nv 192.168.1.1 25

  • nmap工具:nmap smtp.163.com -p25 --script=smtp-open-relay.nse

  • smtp-user-enum工具:smtp-user-enum -M VRFY -U users.txt -t 192.168.1.1

  • 一些杂项识别,总之,信息收集就是收集有关目标系统的一切。

  • 防火墙识别:nmap -sA 172.16.36.135 -p 22

  • 负载均衡识别:lbd bbs.zkaq.cn

  • WAF识别:nmap bbs.zkaq.cn --script=http-waf-detect.nse

+充值 -支付:+代表必须带关键字,-代表必须减去关键字

“充值 支付”:双引号内的内容,进行一个整体搜索

inurl:?id:URL中必须带?id

intitle:充值:网站标题中必须有充值

intext:充值:网站正文中必须有充值

filetype:pdf:找pdf文件

b.Shodon语法

c.Fofa语法

2.whois查询

a.在线网站查询

b.反查邮箱

c.注册人反查

d.备案查询

3.隐藏域名hosts碰撞

hosts碰撞参考文章:https://mp.weixin.qq.com/s/fuASZODw1rLvgT7GySMC8Q


四、参考文章

常见Web源码泄露总结:https://www.secpulse.com/archives/55286.html

github 关键词监控:https://www.codercto.com/a/46640.html

利用GitHub搜索敏感信息:http://www.361way.com/github-hack/6284.html

Github 泄露扫描系统:https://www.oschina.net/p/x-patrol?hmsr=aladdin1e1

监控github代码库:https://github.com/0xbug/Hawkeye

Goby工具:https://blog.csdn.net/Alexhcf/article/details/105109362

cms识别工具cmsIdentification:https://github.com/theLSA/cmsIdentification/

图片

没看够~?欢迎关注!

免费领取安全学习资料包!

渗透工具

技术文档、书籍

 

面试题

帮助你在面试中脱颖而出

视频

基础到进阶

环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等

 

应急响应笔记

学习路线

  • Net:8.8.8.8 # 查询ip的相关的主机信息,也可以直接搜网段

  • City:Beijing # 查询城市为北京的设置

  • Country:CN # 查询属于中国的设备 。CN中国

  • Port:80 # 查询指定开放端口的设备。

  • Os:windows # 指定操作系统

  • Hostname:baidu.com # 搜索主机或域名为baidu.com的主机或设备

  • Server:Apache # 指定中间件

  • 1、同IP旁站:ip="192.168.0.1“

  • 2、C段:ip="192.168.0.0/24“

  • 3、子域名:domain="baidu.com“

  • 4、标题/关键字:title="百度“

  • 5、如果需要将结果缩小到某个城市的范围,那么可以拼接语句

  • 注册域名的时候留下的信息。比如域名注册人的邮箱、电话号码、姓名等。根据这些信息可以尝试制作社工密码,或者查出更多的资产等等,也可以反查注册人,邮箱,电话,机构及更多的域名。

  • 站长之家域名WHOIS信息查询地址:http://whois.chinaz.com/

  • 爱站网域名WHOIS信息查询地址 https://whois.aizhan.com/

  • 腾讯云域名WHOIS信息查询地址 https://whois.cloud.tencent.com/

  • 美橙互联域名WHOIS信息查询地址 https://whois.cndns.com/

  • 爱名网域名WHOIS信息查询地址 https://www.22.cn/domain/

  • 易名网域名WHOIS信息查询地址 https://whois.ename.net/

  • 中国万网域名WHOIS信息查询地址 https://whois.aliyun.com/

  • 西部数码域名WHOIS信息查询地址 https://whois.west.cn/

  • 新网域名WHOIS信息查询地址 http://whois.xinnet.com/domain/whois/index.jsp

  • 纳网域名WHOIS信息查询地址 http://whois.nawang.cn/

  • 福人:https://bbs.fobshanghai.com/checkemail.html

  • whois反查:https://www.benmi.com/rwhois

  • 站长工具:http://whois.chinaz.com/reverse?ddlSearchMode=1

  • 注册人查询:www.reg007.com

  • 站长工具:http://whois.chinaz.com/reverse?ddlSearchMode=1

  • 天眼查 https://www.tianyancha.com/

  • 爱站备案查询https://icp.aizhan.com/

  • 域名助手备案信息查询 http://cha.fute.com/index

  • 站长工具:http://icp.chinaz.com/

    • title="百度"&& region="Beijing“

    • 6.特征:body="百度"或header="baidu"

    • 一般来说,通过ip直接访问目标,要比通过域名来访问目标网站,得到的信息会更多。但如果域名绑定过多个ip的话,管理员出现配置上的失误,是会导致一些敏感信息泄露的,那么这种情况就可以通过域名+ip捆绑的形式进行碰撞,收集目标公司资产的域名以及解析过的所有ip,将他们一对多的形式进行碰撞,能发现一些很有意思的东西出现。

相关文章:

渗透测试 | 信息收集常用方法合集

目录 一、关于域名 1.子域名收集 a.搜索引擎查找 b.在线查询 c.工具 d.SSL/TLS证书查询 2.端口型站点收集 3.目录文件扫描 a.目录扫描工具 b.github搜索 c.google搜索 d.在线网站 e.文件接口工具 4.旁站和C段 a.旁站查询 b.C段查询 5.网站技术架构信息 a.基础…...

使用 ElementUI 组件构建无边框 Window 桌面应用(WinForm/WPF)

生活不可能像你想象得那么好,但也不会像你想象得那么糟。 我觉得人的脆弱和坚强都超乎自己的想象。 有时,我可能脆弱得一句话就泪流满面;有时,也发现自己咬着牙走了很长的路。 ——莫泊桑 《一生》 一、技术栈 Vite + Vue3 + TS + ElementUI(plus) + .NET Framework 4.7.2…...

JavaScript中数组的方法和函数作用域问题

1 -函数作用域问题-: 函数的外层作用域,在函数创建时就已确定,和函数的调用位置无关 var name 嘿嘿;// 函数的外层作用域,在函数创建时就已确定,和函数的调用位置无关// JS中的作用域被称为 词法作用域function fn() {console.…...

nodejs设置x-xss-protection解决xss问题

在Node.js中设置X-XSS-Protection可以通过使用helmet库来完成。 首先,确保已经安装了helmet库。如果没有安装,可以运行以下命令进行安装: npm install helmet --save 然后,在你的Node.js应用程序中引入并配置helmet库&#xff…...

C/C++不同整数类型的区别

在C/C中涉及的整数相关的类型大致有如下几种: char、unsigned charshort、unsigned shortint、unsigned intlong、unsigned longlong long、unsigned long longint8_t、uint8_tint32_t、uint32_tint64_t、uint64_tDWORDDWORD32、DWORD64size_t、ssize_tSIZE_T、SSI…...

如何理解JDK、JRE、JVM区别与联系

摘要:JDK是 Java 语言的软件开发工具包(SDK)。在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre。 一、JDK JDK(Ja…...

用友GRP-U8 SmartUpload01 文件上传漏洞

漏洞描述 用友GRP-U8行政事业内控管理软件是一款专门针对行政事业单位开发的内部控制管理系统,旨在提高内部控制的效率和准确性。该软件/u8qx/SmartUpload01.jsp接口存在文件上传漏洞,未经授权的攻击者可通过此漏洞上传恶意后门文件,从而获取…...

react 路由v6

这里是区别:V5 vs V6 这里是官网:可以查看更多高级属性 一、基本使用: 1、配置文件 src/routes/index import React from "react";const Home React.lazy(() > import("../Pages/Home")); const About React.laz…...

rpc【通义】rpc原理【gpt】

一 rpc RPC(Remote Procedure Call,远程过程调用)是一种编程技术,它允许在分布式系统中的一个程序像调用本地函数一样调用另一个程序(位于不同的机器或进程中)的函数或方法。RPC的主要目标是隐藏网络通信的…...

Leetcode 2973. Find Number of Coins to Place in Tree Nodes

Leetcode 2973. Find Number of Coins to Place in Tree Nodes 1. 解题思路2. 代码实现 题目链接:2973. Find Number of Coins to Place in Tree Nodes 1. 解题思路 这道题思路上其实挺简单的,就是一个遍历的思路,找到每一个点对应的子树当…...

如何调动销售人员使用CRM的积极性?

CRM系统在销售人员眼中是流程监管工具也是单调枯燥的操作空间,如何让销售爱上CRM系统?1.让CRM简化销售工作;2.智能提醒销售各项事务;3.让CRM界面更加丰富多彩,通过这些方法帮助销售经理轻松管理团队,销售对…...

数值分析期末复习

第一章 科学计算 误差 解题步骤 x : 真实值 x:真实值 x:真实值 x ∗ : 近似值 x^*:近似值 x∗:近似值 先求绝对误差 e ∗ e^* e∗: x − x ∗ x - x^* x−x∗ 绝对误差限是 ∣ x − x ∗ ∣ ≤ ε |x - x^{*}| \le \varepsilon ∣x−x∗∣≤ε 求相对误差限: ∣ x − x ∗…...

k8s的探针

一、探针原理 分布式系统和微服务体系结构的挑战之一是自动检测不正常的应用程序,并将请求(request)重新路由到其他可用系统,恢复损坏的组件。健康检查是应对该挑战的一种可靠方法。使用 Kubernetes,可以通过探针配置运…...

Python 爬虫之下载视频(五)

爬取第三方网站视频 文章目录 爬取第三方网站视频前言一、基本情况二、基本思路三、代码编写四、注意事项(ffmpeg)总结 前言 国内主流的视频平台有点难。。。就暂且记录一些三方视频平台的爬取吧。比如下面这个: 一、基本情况 这次爬取的方…...

Gradle下载地址

Gradle下载地址 Gradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,Gradle也是第一个构建集成工具,与ant、maven、ivy有良好的相容相关性。支持maven, Ivy仓库,支持传递性依赖管理,而不需要远程仓库…...

顺序表的实现(头插、尾插、头删、尾删、查找、删除、插入)

目录 一. 数据结构相关概念​ 二、线性表 三、顺序表概念及结构 3.1顺序表一般可以分为: 3.2 接口实现: 四、基本操作实现 4.1顺序表初始化 4.2检查空间,如果满了,进行增容​编辑 4.3顺序表打印 4.4顺序表销毁 4.5顺…...

VMware虚拟机安装Ubuntu系统教程

所使用的文件如下: VMware Workstation 17 Pro ubuntu-22.04.3-desktop-amd64.iso 一、ubuntu 命名规则及各版本一览表 1.ubuntu 命名规则: 例如:ubuntu 16.04 LTS 是长期维护版本;ubuntu 17.04 是新特性版本 前两位数字为发…...

41 sysfs 文件系统

前言 在 linux 中常见的文件系统 有很多, 如下 基于磁盘的文件系统, ext2, ext3, ext4, xfs, btrfs, jfs, ntfs 内存文件系统, procfs, sysfs, tmpfs, squashfs, debugfs 闪存文件系统, ubifs, jffs2, yaffs 文件系统这一套体系在 linux 有一层 vfs 抽象, 用户程序不用…...

C++面试宝典第9题:找出第K大元素

题目 给定一个整数数组a,同时给定它的大小N和要找的K(1 <= K <= N),请根据快速排序的思路,找出数组中第K大的数(保证答案存在)。比如:数组a为[50, 23, 66, 18, 72],数组大小N为5,K为3,则第K大的数为50。 解析 这道题主要考察应聘者对于快速排序的理解,以及实…...

“马屁精”李白

“李白一斗诗百篇&#xff0c;长安市上酒家眠。天子呼来不上船&#xff0c;自称臣是酒中仙。”这是诗圣杜甫笔下的李白&#xff0c;也是我们脑海里坚信无二的李白。恃才傲物又狂放不羁的诗仙&#xff0c;怎么会低眉顺眼地去拍人马屁呢&#xff1f; 但我要说的是&#xff0c;人…...

python之glob的用法

目录 获取特定扩展名的所有文件 获取特定目录下的所有文件 递归获取所有文件 转义特殊字符 iglob glob 是 Python 中用于文件模式匹配的一个模块。它使用 Unix shell-style 的通配符来进行匹配&#xff0c;并返回所有匹配的文件路径列表。 下面是一些 glob 的基本用法&am…...

【adb】电脑通过ADB向手机传输文件

具体步骤如下&#xff1a; Step1 下载ADB工具 下载最新版本的 ADB工具 !!! 注意&#xff1a;一定要是最新版本的ADB&#xff0c;否则很可能导致无法识别到手机。 将下载的ADB解压以后的文件如下图所示&#xff1a; Step2 添加环境变量 将 ADB的路径 D:\platformtools &…...

npm的常用使用技巧

npm是一个强大的工具&#xff0c;可以帮助你管理Node.js项目中的依赖项。以下是一些有用的npm使用技巧&#xff1a; 使用npm install命令&#xff1a;这个命令可以安装项目的依赖项。如果你想安装一个特定的版本&#xff0c;你可以使用npm install <package><version…...

【网络奇遇记】揭秘计算机网络的性能指标:速率|带宽|吞吐量|时延

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;网络奇遇记、数据结构 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 &#x1f4cb;前言一. 速率1.1 数据量1.2 速率 二. 带宽三. 吞吐量四. 时延4.1 发送时延4.2 传播时延…...

ACM中算法时间约束

ACM中算法时间约束 一般ACM竞赛C/C的时间限制是一秒&#xff0c;因此可以根据题目数据来推断该题所使用的算法。 算法的时间复杂度在 1 0 7 10^7 107左右合适&#xff0c;最多不能超过 1 0 8 10^8 108&#xff0c; O ( n ) O(n) O(n)的极限就在 1 0 8 10^8 108左右。 问题规…...

C++11的列表初始化和右值引用

目录 前言 一、C11的简介 二、C11的小故事。 三、统一的列表初始化 1.列表初始化 2.initializer_list 四、右值引用 1.什么是左值 2.什么是右值 3.右值引用写法 4.右值的分类 5.右值引用的作用 6.STL容器中的右值引用 7.万能引用 总结 前言 C11相较于之C98&…...

千帆起航:探索百度智能云千帆AppBuilder在AI原生应用开发中的革新之路

千帆起航&#xff1a;探索百度千帆AppBuilder在AI原生应用开发中的革新之路 1.揭开帷幕&#xff0c;大模型第二次战役 自从 ChatGPT 横空出世后&#xff0c;一石激起千层浪&#xff0c;人工智能也正在从感知理解走向生成创造&#xff0c;这是一个关键里程碑。生成式大模型完成…...

RevIT™ AAV Enhancer, 提高AAV产量的又一利器!

腺相关病毒 (AAV) 是基因治疗中使用最广泛的传递机制。近年来&#xff0c;基于AAV病毒所开发的基因疗法的研发及临床试验注册数量也呈指数级增长。截止本文撰写之时&#xff0c;美国食品和药物管理局已批准五项AAV疗法&#xff0c;也是全球市场上最为昂贵的药物&#xff0c;其中…...

Kubectl 部署有状态应用(下)

接上文 《Kubectl 部署有状态应用&#xff08;上&#xff09;》创建完StatefulSet后&#xff0c;本文继续介绍StatefulSet 扩展、更新、删除等内容。 StatefulSet 中的 Pod 验证序数索引和稳定的网络身份 StatefulSet 中的 Pod 具有唯一的序数索引和稳定的网络身份。 查看 …...

Jmeter 性能 —— 监控服务器!

Jmeter监控Linux需要三个文件 JMeterPlugins-Extras.jar (包&#xff1a;JMeterPlugins-Extras-1.4.0.zip)JMeterPlugins-Standard.jar (包&#xff1a;JMeterPlugins-Standard-1.4.0.zip)ServerAgent-2.2.3.zip 1、Jemter 安装插件 在插件管理中心的搜索Servers Performan…...

离散型制造企业为什么要注重MES管理系统的实施

离散型制造企业经常面临三个核心问题&#xff1a;生产什么、生产多少以及如何生产。尽管许多企业都实施了ERP系统&#xff0c;但仍然绕不开MES管理系统的话题。本文将从三个方面详细解释为什么离散型企业需要实施MES管理系统。 一、生产线经常出现的问题 在离散型企业中&#…...

Linux系统中跟TCP相关的内核参数

1. TCP保活机制 参考 《Nginx(三) 配置文件详解 - 基础模块》3.18章节 net.ipv4.tcp_keepalive_intvl&#xff1a;设置两次相邻探活检测的间隔时间。默认是75秒&#xff0c;单位是秒。net.ipv4.tcp_keepalive_probes&#xff1a;设置探活最多检测次数。默认是9次&#xff0c;单…...

代理模式(Proxy)

代理模式(Proxy Pattern)是一种结构型设计模式,用于为另一个对象提供一个代替品或占位符以控制对这个对象的访问。这个模式主要用于延迟处理操作或者在进行实际操作前后进行其它处理。 代理模式的实现通常涉及以下角色: 抽象主题(Subject):定义了代理和真实对象的共用接…...

在MacOS上Qt配置OpenCV并进行测试

目录 一.Qt环境准备 二.在Qt项目中加载Opencv库并编写代码测试 1.使用Opencv加载图片 &#xff08;1&#xff09;在Qt中创建一个新项目 &#xff08;2&#xff09;在.pro文件中链接OpenCV库 &#xff08;3&#xff09;添加新资源文件 &#xff08;4&#xff09;在mainw…...

java数据结构与算法刷题-----LeetCode167:两数之和 II - 输入有序数组

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 思路 题目要求我们找到两个数相加的和&#xff0c;等于target指定的值。而…...

Linux:jumpserver V3的安装与升级(在线离线)(2)

官方文档写的非常详细&#xff0c;我这篇文章时间长了&#xff0c;会随着官方版本更新而落后 JumpServer - 开源堡垒机 - 官网https://www.jumpserver.org/安装和升级在官网也有详细的信息&#xff0c;我写本章是为了记录一下实验 我的系统是centos7.9 在线安装 在确定我们可…...

【GoLang】Go语言几种标准库介绍(一)

你见过哪些令你膛目结舌的代码技巧&#xff1f; 文章目录 你见过哪些令你膛目结舌的代码技巧&#xff1f;前言几种库bufio&#xff08;带缓冲的 I/O 操作&#xff09;特性示例 bytes (实现字节操作)特性示例 总结专栏集锦写在最后 前言 随着计算机科学的迅猛发展&#xff0c;编…...

短剧分销系统:月入百w的新模式

随着我国短剧的高速发展&#xff0c;越来越多的人进入到了短剧影视行业。本文旨在介绍短剧市场的发展前景以及短剧分销系统的设计和开发。 一、短剧发展背景 短剧具有时长短、剧情紧凑、节奏快、剧情新颖等特点&#xff0c;满足了国内观众的碎片化时间&#xff0c;在当下短视频…...

鞋服用户运营策略如何实现有效闭环?

实现长期价值和业务闭环是企业经营的关键。对于鞋服行业来说&#xff0c;如何基于客户旅程编排&#xff08;Customer Journey Orchestration&#xff0c;简称 CJO&#xff09;实现用户运营策略的有效闭环&#xff0c;提升长期价值呢&#xff1f; 本文围绕该主题&#xff0c;从鞋…...

简单工厂、工厂方法、抽象工厂和策略模式

摘要 本文简单介绍软件开发过程中面临的痛点和几个总体原则。详细介绍了简单工厂、工厂方法、抽象工厂和策略模式的实现&#xff0c;以及各种模式之间的相似、区别。 背景 开发面临哪些问题&#xff08;痛点&#xff09;&#xff1f; 相信做过大型软件开发的tx都遇到过以下类似…...

junit mocktio request打桩

Controller下request组装参数 HttpServletRequest request new MockHttpServletRequest(); ((MockHttpServletRequest) request).addHeader("router","login"); ((MockHttpServletRequest) request).addParameter("test","wwww"); …...

第十四节TypeScript 联合类型

1、简介 联合类型可以通过管道&#xff08;|&#xff09;将变量设置多种类型&#xff0c;赋值时可以根据设置的类型来赋值。 注意&#xff1a;只能赋值指定的类型&#xff0c;如果赋值其它类型就会报错的。 2、创建联合类型的语法格式&#xff1a; Type1|Type2|Type3 实例&a…...

[x86汇编语言]从实模式到保护模式第二版

下载汇编器&#xff1a;https://www.nasm.us/pub/nasm/releasebuilds/2.16.02rc6/win64/ mov ax, 0x3f add bx,ax add cx,ax 编译&#xff1a; C:\Users\HP>cd D:\BaiduNetdiskDownload\01b站\lizhong\myasm C:\Users\HP>D: D:\BaiduNetdiskDownload\01b站\lizhong…...

基本的逻辑门

前言 本篇文章介绍基本的逻辑门&#xff0c;然后给出C语言描述 逻辑门是在集成电路上的基本组件。简单的逻辑门可由晶体管组成。这些晶体管的组合可以使代表两种信号的高低电平在通过它们之后产生高电平或者低电平的信号。高、低电平可以分别代表逻辑上的“真”与“假”或二进…...

云原生系列3-Kubernetes

1、Kubernetes概述 k8s缩写是因为k和s之间有八个字符。k8s是基于容器技术的分布式架构方案。官网&#xff1a;https://kubernetes.io/zh-cn/ Google在 2014年开源了Kubernetes项目&#xff0c;Kubernetes是一个用于自动化部署、扩展和管理容器化应用程序的开源系统。同样类似的…...

R-列表、矩阵、数组转化为向量

目录 一、c()函数 二、unlist()函数 一、c()函数 c()&#xff1a;对应的英文是combine. 当你使用c()函数时&#xff0c;它会将输入的对象连接成一个向量。因此&#xff0c;无论输入是矩阵、数组还是列表&#xff0c;c()函数都会将它们连接成一个简单的向量。因此&#xff…...

算法通关村-番外篇排序算法

大家好我是苏麟 , 今天带来番外篇 . 冒泡排序 BubbleSort 最基本的排序算法&#xff0c;最常用的排序算法 . 我们以关键字序列{26,53,48,11,13,48,32,15}看一下排序过程: 动画演示 : 代码如下 : (基础版) class Solution {public int[] sortArray(int[] nums) {for(int i …...

三种方式简单搭建http本地文件服务

有时候想写一个简单的html文件&#xff0c;然后加上一些image、js、css文件用于测试。希望有一个简单的http服务&#xff0c;总结了如下三种方式&#xff0c;欢迎讨论更多高效的方式。 &#xff08;一&#xff09;使用Web Server for Chrome浏览器扩展 之前写过一篇博文&#x…...

设计模式--适配器模式

实验8&#xff1a;适配器模式 本次实验属于模仿型实验&#xff0c;通过本次实验学生将掌握以下内容&#xff1a; 1、理解适配器模式的动机&#xff0c;掌握该模式的结构&#xff1b; 2、能够利用适配器模式解决实际问题。 [实验任务]&#xff1a;双向适配器 实现一个双向…...

Node.js教程-express框架

概述 Express是基于Node.js平台(建立在Node.js内置的http模块上)&#xff0c;快速、开放、极简的Web开发框架。 中文官网 http://www.expressjs.com.cn/。 Github地址&#xff1a;https://github.com/orgs/expressjs。 Express核心特性&#xff1a; 可设置中间件来响应 HTTP…...