所面试的公司:深蓝,360,长亭,深信服(问的问题都差不多,所以我混合起来总结了一下)
面试职位:蓝队初级
面试官的问题:
SQL注入
防御:预编译(能够防止SQL注入,但是不能处理%和_特殊字符)
黑名单:对特殊字符进行转义过滤替换或者删除、
白名单:对用户输入进行限制(正则表达式限制)、
规范编码和字符集(编码不同可能会导致宽字节注入)、
参数化查询(原理):不会把参数的内容当做sql语句执行,完成编译后套用参数运行
分类:
rand():产生一个0-1之间随机数,rand(0),随机产生一个0-1的随机数,运行多次产生的结果一样
floor():向下取整,floor(rand()*2),随机产生0和1两个数
group by:分组排列
count():统计数量
concat():将字符串连接起来
if(condition,A,B) --如果条件成立返回A,否则返回B;用啥语句替代if???????
sleep(num) --表示延迟几秒
left(m,n) --从左向右截取字符串 m 返回其前 n 位
substr(m,1,1) --取字符串 m 的左边第一位起,1字长的字符串
ascii(m) --返回字符 m 的 ASCII 码
length(m) --返回字符串 m 的长度
count(column_name) --返回指定列的值的数目
(1)过滤*关键字* 使用大小写绕过,双写绕过,URL编码绕过
(2)过滤*特殊字符*,*空格* 使用URL编码绕过
(4)过滤*注释* 使用添加一个闭合方式绕过,逻辑运算绕过
(5)过滤*单引号* 使用宽字符绕过(前提PHP使用GBK编码)
(6)过滤*明码数据* 使用burpsuite加密发送数据绕过
root权限,GPC关闭,知道文件路径 的前提
日志路径:var/log/mysqld.sql
select '一句话' into outfile '路径'
select '一句话' into dumpfile '路径'
限制条件:
1-MySQL 数据库没有开启安全模式(确认secure_file_priv=''是否为空)
2-已知的数据库账号具有对MySQL数据库insert和delete的权限,最好是root最高权限。
3-shell有写入到数据库安装目录的权限。
原理: 通过拼接恶意的html代码,利用js语句来执行攻击,实现对用户浏览器的攻击
类型:
- 反射型:攻击代码在url里,输出在http响应中
- 存储型:把用户输入的数据存储在服务器上
- DOM型:通过修改页面的DOM结点形成xss
反射和dom的区别: DOM-XSS是javascript处理输出, 而反射性xss是后台程序处理
XSS绕过:
1.大小写
2.js伪协议
3.没有分号
4.Flash
5.Html5新标签
6.Fuzz进行测试
7.双层标签绕过
修复防御:
1.对输出内容实体化编码,对JavaScript的事件进行过滤
2.对重要的cookie设置httpOnly, 防止客户端通过document.cookie读取 cookie,此 HTTP头由服务端设置。
3.csp防范xss
常问问题:
- xss蠕虫产生条件:用户之间产生交互行为的页面都可能造成xss蠕虫,不一定需要存储型xss
- 有shell的情况下如何长久控制:
后台登录处加一段记录登录账号密码的js,判断是否登录成功,
如果登录成功,就把账号密码记录到一个生僻的路径的文件中或者直接发到自己的网站文件中。在登录后才可以访问的文件中插入XSS脚本
file:在有回显的情况下,利用 file 协议可以读取任意内容
dict:泄露安装软件版本信息,查看端口,操作内网redis服务等
gopher:gopher支持发出GET、POST请求:可以先截获get请求包和post请求包,再构造成符合gopher协议的请求。gopher协议是ssrf利用中一个最强大的协议(俗称万能协议)。可用于反弹shell
http/s:探测内网主机存活
补充xss、csrf、ssrf区别:
XSS:跨站脚本攻击;利用站点内的信任用户盗取cookie
CSRF:跨站请求伪造攻击;通过伪装成信任用户请求信任的网站
CSRF(跨站/客户端请求伪造) => 浏览器因为JS偷偷发送数据包
SSRF(服务器端请求伪造)=> 服务器因为你传的参数偷偷发送数据包
C or S => C客户端(client)s服务端(server)
文件上传
绕过程序检测:当碰到不认识的扩展名时,将会从后向前解析,直到碰到认识的扩展名为止,如果都不认识,则会暴露其源代码。
在上传文件时,判断文件名是否是PHP,ASP,ASPX,ASA,CER等脚本扩展名,如果是,则不允许上传,这是可以构造类似1.php.rar等扩展名绕过程序检测,并配合解析漏洞获取webshell
当建*.asa ,*.asp,*.cer格式的文件夹时,其目录下的任何扩展名的文件都将被IIS当做asp文件进行解析
当文件为*.asp;1.jpg时,IIS会以asp脚本来执行 原理:Nginx实际上是PHP CGI解析漏洞,在PHP配置文件中有一个关键选项cgi.fi:x_pathinfo,一般是默认开启的,
所以**解析到不存在的文件时,PHP会向前递归解析,于是造成了解析漏洞。**
攻击者可以上传木马文件,然后在URL后面加上xxx.php(可随便命名),就可以获得网站的webshell。比如访问http://www.xxx.com/1.jpg/1.php,此时1.jpg会被当做php脚本来解析,这里的1.php是不存在的。 1.黑名单
a.后缀名不完整 .php5 .phtml等
b. .htacess
c.大小写
d.在数据包中 后文件缀名前加空格
e.后缀名前加
f.加上::$DATA
g.未循环验证,可以使用x.php..类似的方法
2.白名单:%00截断,图片马,条件竞争
1.后端验证:采用服务端验证模式 2.后缀验证:基于白名单,黑名单过滤 3.MIME验证:基于上传自带类型艰检测 4.内容检测:文件头,完整性检测 5.自带函数过滤 6.WAF防护软件:宝塔、云盾等
将上传文件与web服务隔离
白名单过滤、限制上传文件类型
文件上传路径设置为不可执行权限
检查文件上传路径
自带函数检测
自定义函数检测
图片渲染
对上传文件重命名
对文件内容压缩,重新生成文件内容
检查文件内容
include():找不到被包含的文件时只会产生警告,脚本将继续运行。
include_once():找不到被包含的文件时只会产生警告,脚本将继续运行。如果该文件中的代码已经被包含,则不会再次包含,即程序只调用一次。
require():找不到被包含的文件时会产生致命错误,并停止脚本运行。
require_once():找不到被包含的文件时会产生致命错误,并停止脚本运行。如果该文件中的代码已经被包含,则不会再次包含,即程序只调用一次。
__wakeup() //使用unserialize时触发
__sleep() //使用serialize时触发
__construct() //创建对象时触发
__destruct() //对象被销毁时触发
__call() //在对象上下文中调用不可访问的方法时触发
__callStatic() //在静态上下文中调用不可访问的方法时触发
__get() //用于从不可访问的属性读取数据
__set() //用于将数据写入不可访问的属性
__isset() //在不可访问的属性上调用isset()或empty()触发
__unset() //在不可访问的属性上使用unset()时触发
__toString() //把类当作字符串使用时触发
__invoke() //当脚本尝试将对象调用为函数时触发
1、大量的404请求:目录扫描
2、大量select *** from:SQL注入
3、连续一个IP的多端口请求或多个IP的几个相同端口:端口扫描
4、爆破账号密码:ip.addr219.239.105.18 and http.request.uri matches “edit|uoload|modify”
5、用菜刀链接的包,post请求 ip.addr219.239.105.18 and htpp.request.method==POST
21 FTP 可以爆破,FTP匿名登录,anonymous/anonymous
22 SSH
23 telnet
80 web
81 web
139/445 IPC,网络共享(MS17-010)
1433 mssql
1521 oracle
3306 mysql
3389 rdp
6379 redis?? Redis未授权访问,因为没有密码导致谁都能进,能造成信息泄露,反弹shell,向服务器写入ssh公钥,直接用私钥连接
7001/7002 weblogic,各种漏洞
8080 Tomcat,PUT上传webshell,但是JSP是被过滤的,可以使用1.jsp%00;后台部署war包;幽灵猫命令执行
8888
50050 cobalt strike的默认开放端口
核心原理为,在正常的log处理过程中对**${**这两个紧邻的字符做了检测,一旦匹配到类似 于表达式结构的字符串就会触发替换机制,将表达式的内容替换为表达式解析后的内容,而不 是表达式本身,从而导致攻击者构造符合要求的表达式供系统执行 。
漏洞成因、特征:在打印日志的时候,如果日志内容中包含关键词 ${,攻击者就能将关键字所包含的内容当作变量来替换成任何攻击命令,并且执行。
1 .-Pn,禁ping扫描,nmap在对主机执行扫描动作之前,会发送一个ICMP包,去探测远程主机是否存活,如果对方有返回的话,nmap才认为这个扫描任务执行是有意义的,并且开始扫描。如果没有返回包,则不执行扫描。如果对方主机设置了禁ping,在不加-Pn的情况下,是不会返回扫描结果的。
2 .-sP,此命令的意义在于是令nmap去用ping命令去探测对方主机的存活情况。如果对方的机器能ping通的话,就告诉我们host is up。不绝对准确,因为可能对方主机设置了禁ping。
3 .-sS,半开放扫描。在TCP协议的三次握手的过程当中。会由客户端向服务端发送SYN包,如果服务器的端口是开放的,服务器则会返回一个SYN包+一个ACK,第三部再由客户端验证服务器的ACK是否正确,如若正确,则发送ACK包到服务器以便完成TCP连接的建立。这种扫描的原理就是客户端只执行第一步,服务端执行第二步,第三步不做了。这种方法的好处是可以规避日志的记录。
4 .-sT,TCP协议三次完全扫描。
5 .-PR,使用ARP协议,进行局域网内主机扫描,这种扫描会令速度更快,并且结果更加准确。
6 .-O,用于探测对方主机的操作系统的。
7 .-p,计算机的端口是有65535个的。如果扫描全端口,则写作-p 1-65535
8 .-T4,默认情况是3。
9 .-P0,用于在禁ping时探测主机存活。
sqlmap的--os-shell参数取得shell
本质:写入两个 php 文件,其中的一个可以让我们用来执行命令,而另外一个可以让我们可以上传文件。
执行条件有三个
(1)网站必须是root权限
(2)攻击者需要知道网站的绝对路径
(3)GPC为off,php主动转义的功能关闭
可以根据情形定制一些常见端口扫描
不仅可以扫IP ,还可以扫域名
扫描的时候也可以加上 想测试是否存在的 漏洞的 POC
可以自定义暴破字典
最后报告还可以导入导出
信息收集
a、服务器的相关信息(真实ip,系统类型,版本,开放端口,WAF等)
b、网站指纹识别(包括,cms,cdn,证书等),dns记录
c、whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等)
e、子域名收集,旁站,C段等
f、google hacking针对化搜索,pdf文件,中间件版本,弱口令扫描等
g、扫描网站目录结构,爆后台,网站banner,测试文件,备份等敏感文件泄漏等
h、传输协议,通用漏洞,exp,github源码等
漏洞挖掘
a、浏览网站,看看网站规模,功能,特点等
b、端口,弱口令,目录等扫描,对响应的端口进行漏洞探测,比如 rsync,心脏出血,mysql,ftp,ssh弱口令等。
c、XSS,SQL注入,上传,命令注入,CSRF,cookie安全检测,敏感信息,通信数据传输,暴力破解,任意文件上传,越权访问,未授权访问,目录遍历,文件 包含,重放攻击(短信轰炸),服务器漏洞检测,最后使用漏扫工具等
漏洞扫描
开始检测漏洞,如XSS,XSRF,sql注入,代码执行,命令执行,越权访问,目录读取,任意文件读取,下载,文件包含,远程命令执行,弱口令,上传,编辑器漏洞,暴力破解等
漏洞利用
利用msf,nc一些工具拿shell,或者其他权限
权限提升
a、mysql提权,udf提权,mof提权,serv-u提权,oracle提权
b、windows 溢出提权
c、linux脏牛,内核漏洞提权
日志清理
总结报告及修复方案
查询指定cms的管理系统:app="cms"
domain= 搜索根域名带有xx的网站。例:domain=“baidu.com”
host=从url中搜索网站注意搜索要用host作为名称。例:host= “.edu.cn”
port= 查找对应443端口的资产。例:port=3389
protocol= 搜索制定协议类型(在开启端口扫描的情况下有效)。例:protocol=ssh
cert=搜索证书(https或者imaps等)中带有域名的资产。例:cert=baidu.com
banner= 搜索协议中带有账户文本的资产。例:banner=users && protocol=ftp
type=搜索所有协议资产,支持subdomain和service两种。例:type=servicce
server== 搜索服务器、中间件名称。例:server=apache
高级语法需要用管道符连接如: ‘|| ‘ ‘&&’,如下:
body=”后台”&&domain=”xxx.com” 查询指定域名的后台
Header=”Hikvision” 找摄像头
| intext 寻找正文中含有关键字的网页
| intitle 寻找标题中含有关键字的网页
| allintitle 用法和intitle类似,只不过可以指定多个词
| inurl 将返回url中含有关键词的网页
| allinurl 用法和inurl类似,只不过可以指定多个词,// 所有关键词必须出现在在文本中
| site 指定访问的站点
| filetype 指定访问的文件类型
| cache 显示页面的缓存版本
指纹搜索:例如:php app:dedecms var:5.7。
app:组件名称,例如:app:apache。
ver:组件版本,例如:ver:2.0。
OS:操作系统,例如:os:window。
Service:服务名称,例如:service:vpn。
Cidr:网段,例如:cidr:192.168.1.1/24。
Devic:设备名,例如:devic:router。
keyword:关键字查询,例如:keyword:technology。
尝试弱口令:例如:php app:phpmyadmin。
搜索摄像设备:1.DVRDVS-Webs,2.JAWS等等。
过滤 ip: 过滤源 ip 地址:ip.src==1.1.1.1;,目的 ip 地址:ip.dst==1.1.1.1;
过滤端口: 过滤 80 端口:tcp.port==80,源端口:tcp.srcport==80,目的端 口:tcp.dstport==80
协议过滤: 直接输入协议名即可,如 http 协议 http http
模式过滤: 过滤 get/post 包 http.request.mothod=="GET/POST
菜刀特征 使用了base64的方式加密了发送给“菜刀马”的指令,其中的两个关键payload z1和z2,这 个名字是可变的
蚁剑特征 默认的USER-agent请求头 是 antsword xxx,但是 可以通过修 改:/modules/request.js 文件中 请求UA绕过 其中流量最中明显的特征为<span class="label label-primary">@ini_set(</span>"display_errors","0");这段代码基本是所有 WebShell客户端链接PHP类WebShell都有的一种代码 蚁剑混淆加密后还有一个比较明显的特征,即为参数名大多以“_0x......=”这种形式(下划 线可替换),所以以_0x开头的参数名也很可能就是恶意流量
冰蝎看包没有发现什么特征,但是可以发现它是POST请求的 1、Accept头有application/xhtml+xmlapplication/xmlapplication/signed- exchange属于弱特征(UA头的浏览器版本很老) 2、特征分析Content-Type: application/octet-stream 这是一个强特征查阅资料可 知octet-stream的意思是,只能提交二进制,而且只能提交一个二进制,如果提交文件的 话,只能提交一个文件,后台接收参数只能有一个,而且只能是流(或者字节数组);很少使用
冰蝎2特征: 默认Accept字段的值很特殊,而且每个阶段都一样冰蝎内置了十余种UserAgent ,每次连接 shell 会随机选择一个进行使用。但都是比较老的,r容易被检测到,但是可以在burp中修改 ua头。 Content-Length: 16, 16就是冰蝎2连接的特征
冰蝎3特征: 冰蝎3取消动态密钥获取,目前很多waf等设备都做了冰蝎2的流量特征分析,所以3取消了动态 密 钥获取;php抓包看包没有发现什么特征,但是可以发现它是POST请求的 1)Accept头application/xhtml+xmlapplication/xmlapplication/signed- exchange属于弱特征 2)ua头该特征属于弱特征。通过burp可以修改,冰蝎3.0内置的默认16个userAgent都比较 老。现实生活中很少有人使用,所以这个也可以作为waf规则特征 jsp抓包特征分析Content-Type: application/octet-stream 这是一个强特征查阅 资料可知 octet-stream的意思是,只能提交二进制,而且只能提交一个二进制,如果提交 文件的话,只能提交 一个文件,后台接收参数只能有一个,而且只能是流(或者字节数组); 很少使用。
1.取证,登录服务器,备份,检查服务器敏感目录,查毒(搜索后门文件-注意文件的时间, 用户,后缀等属性),调取日志(系统,中间件日志,WAF日志等);
2.处理,恢复备份(快照回滚最近一次),确定入侵方法(漏洞检测并进行修复)
3.溯源,查入侵IP,入侵手法(网路攻击事件)的确定等
4.记录,归档--------预防-事件检测-抑制-根除-恢复-跟踪-记录通用漏洞的应对等其他 安全应急事件
- 检查系统账号安全
查看服务器是否有弱口令,远程管理端口是否公开
查看服务器是否有可疑账号:cmd输入lusrmgr.msc命令
查看服务器是否存在隐藏账号、克隆账号
结合日志,查看管理员登录时间,用户名是否存在异常
- 检查异常端口、进程
检查端口连接情况,是否有远程连接、可疑连接:
a、netstat -ano 查看目前的网络连接,定位可疑的ESTABLISHED
b、根据netstat 定位出的pid,再通过tasklist命令进行进程定位 tasklist | findstr “PID”
- 检查启动项、计划任务、服务
win+r:输入msconfig,查看异常启动项
win+r:输入regedit,打开注册表,查看开机启动项
- 检查系统相关信息
win+r:输入systeminfo查看系统信息
- 日志分析
win+r:输入eventvwr.msc,打开事件查看器
导出应用程序日志,安全日志,系统日志,利用log parser分析
分析流量数据包,可以用wireshark,分析流量是不是正常的业务操作
webshell:
查web日志,分析攻击流量
扫webshell
排查网站目录,查看最近更改的文件
shell:
查看未知端口,未知进程
排查恶意流量,锁定感染进程
有安全设备就看安全设备
首先就要是地位到具体的那一台机器,既然报警那就说明知道了具体的漏洞类型,加相应的补丁打上,以linux为主(一般都会问linux的),查看/var/log/secure系统日志,查看登录失败的记录,还有Linux历史命令-->home目录的bash_histor,查看执行过的命令。在利用webshell或者是shell查杀工具查杀,查看tmp目录下是非有带有免杀的木马。彻底清除。再到全流量分析的机子上看,是非有经过其他的机器。拿到攻击ip之后到线上的一些网站查看主机类型,比如360或者微步上,查看是非是傀儡机,vps跳板,或者是国内个人云主机。如果是个人云主机,就可以通过whois查看是非有最近绑定的域名,或者绑定者的邮箱。知道邮箱之后就可以反查询出qq号说多少,再利用社工查询到手机号,到一个知名的网站上查询这个手机号有没有注册过什么网站,可以去这些网站通过撞库的方法登入,这样就可以拿到这个攻击者的身份证,学校,地址这些了。
(思路是应急响应->加固->溯源)
对报警的数据进行分析,看是不是内部人员的操作,还是真实的攻击
分析流量数据包,可以用wireshark,分析流量是不是正常的业务操作
从日志 流量 文件开始,先定位位置 查看敏感目录 tmp usr/sbin etc/ssh ,对新创建文件,修改文件等进行查看,找特殊权限文件 比如777 。流量的话 从ua和playload去分析。比如菜刀连jsp木马:第一个参数是a-q,这个是不会变的,第二个是编码,第三个是 playload。日志的话从找到的shell时间点去关联分析,可以还原攻击手法
快速定位 就是看进程和内存 看占用时间长和占用率高的
先看ip,如果ip是公司内部的再看内部人员有没有相关操作,如果不是公司人员业务的操作那就是攻击了,
然后分析payload,分析它写的payload安全设备能否它进行过滤拦截,如果它确实能绕过,那就应该攻击成功了,
成功的话赶紧上报,做应急响应,做出相应处理,添加过滤规则,修改数据库中能修改的数据比如管理员账号密码啥的
检查防火墙的状态(默认 inactive) # ufw status
防火墙版本 # ufw version
启动ufw防火墙 # ufw enable
关闭ufw防火墙 # ufw disable
默认禁止访问所有 # ufw default deny
开放22/TCP端口 # ufw allow 22/tcp
开放53端口(tcp/udp) # ufw allow 53
禁止外部访问 # ufw deny 3306
删除已经添加过的规则 # ufw delete allow 22
允许此IP访问所有的本机端口 # ufw allow from 192.168.1.100
删除上面的规则 # ufw delete allow from 192.168.1.100
查看规则,显示行号 # ufw status numbered
删除第三条规则 # ufw delete 3
关闭ufw # ufw disable
禁止对8888端口的访问 # ufw deny 8888
打开来自192.168.0.1的tcp请求的22端口 # ufw allow proto tcp from 192.168.0.1 to any port 22
- 您刚刚说,您对蜜罐有所了解,您能讲讲你了解的蜜罐是什么?你是否真正参与过蜜罐的部署。
答:搭过微步的Hfish蜜罐
- 那么如果叫你部署一个蜜罐,你会开放哪些端口,为什么//你认为企业的主机哪些端口存在风险//你认为企业应该注意哪些地方的加固
21端口:FTP文件传输协议端口,用来捕获黑客的FTP爆破行为
22端口:SSH端口 链接Linux主机SSH服务的端口,用来捕获黑客的SSH爆破行为
23端口:Telnet服务,命令执行服务,用来探测黑客对于telnet的爆破
80端口/443端口:WEB服务的端口,用来捕获黑客的WEB攻击行为特征
1521:oracle数据库开放端口,捕获黑客的oracle爆破行为,UDF命令执行等行为
3306:MYSQL端口,用来捕获黑客对于mysql数据库的爆破行为,UDF命令执行等行为
3389:Windows远程桌面端口,用来捕获黑客的爆破行为
·······································下面的说不说都行···········································
6379端口:REDIS端口,捕获黑客REDIS未授权访问的攻击,黑客利用redis写ssh秘钥,写webshell,执行计划任务等的攻击
445端口:SMB服务端口-黑客利用永恒之蓝Enternalblue的攻击行为,黑客的SMB账号爆破(通俗简单理解,爆破windows账号密码)
1433端口:Microsoft SQLserver端口,用来捕获黑客爆破1433端口的行为,并且查看黑客利用sqlserver xp_cmdshell,sp_cmdshell等组件命令执行的操作,存储过程的利用
135、139端口:捕获黑客的利用RPC共享的攻击(当蜜罐部署在内网)
比如在8080端口,部署一个假的vpn页面,吸引黑客攻击
拿到跳板后,先探测一波内网存活主机,用net user /domian命令查看跳板机是否在域内,探测存活主机、提权、提取hash、进行横向移动,定位dc位置,查看是否有能直接提权域管的漏洞,拿到dc控制权后进行提权,然后制作黄金票据做好维权,清理一路过来的日志擦擦脚印
1.网络配置 ipconfig /all
2.操作系统 systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
3.软件信息 systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
4.服务信息 wmic /namespace:\root\securitycenter2 path antivirusproduct GET displayName,productState, pathToSignedProductExe
5.用户列表 net user
6.本地管理员信息 net localgroup administrators
7.端口信息 netstat –ano
8.补丁信息 wmic qfe get Caption,Description,HotFixID,InstalledOn
9.查防火墙 netsh firewall show config
是否有域 使用ipconfig /all命令可以查看网关IP地址、DNS的IP地址以及判断当前主机 是否在域内:通过反 向解析查询命令nslookup来解析域名的IP地址,使用解析出来的IP地 址进行对比,判断域控制器和 DNS服务器是否在同一台服务器上
登录域信息 net config workstation 域内信息收集
ICMP探测内网 for /L %I in (1,1,254) DO <span class="label label-primary">@ping</span> -w 1 -n 1 192.168.174.%I | findstr "TTL="
ARP探测内网
端口信息收集
查询域信息 net view /domain
查询域主机 net view /domain:XXX
查询域用户 net group /domain
查找域控 Nslookup -type=SRV _ldap._tcp net time /domain net group "Domain Controllers" /domain
查域用户信息 net user /domain
查询域管理员 net group "Domain Admins" /domain
查询域sid信息 whoami /all
1.通过webshell实现内网socket代理
2.正向链接
3.ssh隧道
4.协议不同出网的方式不同,如dns对应dnscat2 tcp对应
5.测试是否是特定协议或端口出网
面试难度:简单
面试感受和建议:蓝队初级问的不难,应急响应比较多一些,不过多看一些网上的资料也可以
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
量如江海 | 4.00 | 0 | 2023-04-12 19:07:19 | 一个受益终生的帖子~~ |
治秃用霸王 | 4.00 | 0 | 2022-07-16 20:08:40 | 一个受益终生的帖子~~ |
mrwater | 4.00 | 0 | 2022-06-15 15:03:12 | 一个受益终生的帖子~~ |
Track-劲夫 | 50.00 | 0 | 2022-06-10 17:05:58 | 一个受益终生的帖子~~ |
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.
花海
发表于 2022-6-11
感谢大佬的分享,收获了很多,但是文件包含那里include和require作用是不是写反了
评论列表
加载数据中...
kael
发表于 2022-6-13
感谢大佬分享
评论列表
加载数据中...
mrwater
发表于 2022-6-15
感谢大佬分享,辛苦了
评论列表
加载数据中...
君若
发表于 2022-6-22
学习
评论列表
加载数据中...
治秃用霸王
发表于 2022-7-16
牛蛙,大佬
评论列表
加载数据中...
a1287074202
发表于 2022-7-18
学习了,学习了
评论列表
加载数据中...
fancy
发表于 2022-8-8
学无止境啊
评论列表
加载数据中...
鱼四川
发表于 2023-4-16
感觉自己要学的东西还很多啊
评论列表
加载数据中...
track苏牧
发表于 2023-10-15
牛逼,向大佬学习!!!
评论列表
加载数据中...
19978445189
发表于 2023-5-30
[不错不错]
评论列表
加载数据中...