2024年2024渗透测试网安面试题汇总_mysql from 1 for 1(1),jvm性能优化面试题

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

1、远程代码执行
2、war后门文件部署
(五)jBoss
1、反序列化漏洞
2、war后门文件部署
(六)WebLogic
1、反序列化漏洞
2、SSRF
3、任意文件上传
4、war后门文件部署
(七)其它中间件相关漏洞
1、FastCGI未授权访问、任意命令执行
2、PHPCGI远程代码执行

16、XSS?(XSS的根源主要是代码层没有对输入输出做好过滤)
反射性XSS都是把恶意数据传入服务器,不过滤再回传浏览器造成的;
DOM型XSS主要是通过改变浏览器页面的DOM节点形成的,可能不会经过服务器(PHP_SELF)
存储型XSS主要是从数据库里取出来输出到浏览器时没有做实体化编码过滤。
XSS蠕虫的产生条件:(不一定需要存储型XSS)
一个是产生XSS点的页面不属于self页面
用户之间产生交互行为的页面
XSS防护
处理输出编码,js转译.实体化编码
黑白名单过滤(编码限制,标签限制,符号限制)
跨域限制
CSP内容安全策略(浏览器前端防护策略) 的实质就是白名单制度,开发者明确告诉客户端,哪些外部资源可以加载和执行,等同于提供白名单。将同源同域发挥到极致。它的实现和执行全部由浏览器完成,开发者只需提供配置。CSP 大大增强了网页的安全性。攻击者即使发现了漏洞,也没法注入脚本,除非还控制了一台列入了白名单的可信主机。主要防止XSS漏洞,但是不能杜绝XSS。
绕过:
Html5新标签属性
JavaScript伪协议
编码混淆

17、中间人攻击(Burp抓包原理)?
中间人攻击是一个(缺乏)相互认证的攻击;由于客户端与服务器之间在SSL握手的过程中缺乏相互认证而造成的漏洞 (攻击方式SSLSniff、SSLStrip)
防御中间人攻击的方案通常基于以下几种技术:
1.公钥基础建设PKI 使用PKI相互认证机制。
2.延迟测试
使用复杂加密哈希函数进行计算以造成数十秒的延迟;如果双方通常情况下都要花费20秒来计算,并且整个通讯花费了60秒计算才到达对方,这就能表明存在第三方中间人。
3.使用其他形式的密钥交换形式
ARP欺骗:
原理:
每台主机都有一个ARP缓存表,缓存表中记录了IP地址与MAC地址的对应关系,而局域网数据传输依靠的是MAC地址。在ARP缓存表机制存在一个缺陷,就是当请求主机收到ARP应答包后,不会去验证自己是否向对方主机发送过ARP请求包,就直接把这个返回包中的IP地址与MAC地址的对应关系保存进ARP缓存表中,如果原有相同IP对应关系,原有的则会被替换。这样攻击者就有了偷听主机传输的数据的可能
防护
1.在主机绑定网关MAC与IP地址为静态(默认为动态),命令:arp -s 网关IP 网关MAC
2.在网关绑定主机MAC与IP地址
3.使用ARP防火墙

18、数据库存储引擎?
数据库体系结构由客户端连接层、数据库服务层及存储引擎层组成。
存储引擎是数据库中具体与文件打交道的子系统,存储引擎底部是物理存储层,是文件的物理存储层,包括二进制日志、数据文件、错误日志、慢查询日志、全日志等。
不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能
InnoDB:主流的存储引擎。(MySQL)
MyISAM:访问速度快,不支持事务,逐渐被淘汰
MEMORY:BTREE索引或者HASH索引。

19、https的建立过程、TCP三次握手四次挥手过程、OSI四层网络模型及其各层协议、还有个七层模型?
这些个结合图记忆吧,搜一搜 应该好多的

20、PHP代码审计中容易出问题的点?
详见:
GitHub - bowu678/php_bugs: PHP代码审计分段讲解
GitHub - hongriSec/PHP-Audit-Labs: 一个关于PHP的代码审计项目
1、弱类型(比较、字符类型转换)
intval函数四舍五入(小数取整绕过)
intval函数转换字符串
if(KaTeX parse error: Expected '}', got 'EOF' at end of input: …… …. set value=a’)
} //$a一定是整数。然而,你输入1002/*/union 也能进入这个语句
数组转字符串
Array转换整型int/浮点型会返回元素个数;
Array转换bool返回Array中是否有元素;
Array转换成string返回Array,并抛出warning。
MD5()函数=使用数组绕过 ?username[]=1&password[]=2 数组hash之后都是null
MD5()函数
,使用md5碰撞 ?username=s878926199a&password=s155964671a hash碰撞+弱类型
2、函数缺陷
Strcmp()函数 无法比较数组,比较时报错并返回0 PHP5.3之前版本
ereg正则%00截断 16.php?nctf=1%00%23biubiubiu 支持5.3之前版本的php之后使用preg_match()函数替代(也有绕过分析)
strpos出错返回的也是null 原来是判断字符串,我们传入一个数组返回值就是null null!=false
序列化:将php中对象、类、数组、变量、匿名函数等,转化为字符串 方便保存到数据库或者文件中(将状态信息保存为字符串)
unserialize()反序列化参数可控
iconv在字符编码转换时可能导致字符串截断。上传的文件名为shell.php{%80-%99}.jpg 上传绕过
filter_var ( url,FILTER_VALIDATE_URL )使用PHP内置特定过滤器过滤url
可能使用伪协议绕过,再次输出url时造成XSS
?url=javascript://comment%250a alert(1)
foreach 语句滥用造成的变量覆盖
3、默认缺省参数缺陷
in_array(a,array,FALSE)函数 检查数组中是否存在某个值
第三个参数默认为FALSE,若粗心的开发没有写第三个参数为true的话,比较过程只进行弱类型检查,容易产生绕过
htmlentities(string,缺省参数) 将字符转换为 HTML 转义字符
三大缺省参数:
ENT_COMPAT(默认值):只转换双引号。
ENT_QUOTES:两种引号都转换。
ENT_NOQUOTES:两种引号都不转换。
同样的若是开发人员不专心,没加缺省参数,造成单引号逃逸

21、IP伪造
由于TCP需要三次握手连接,在实现正常的TCP/IP 双方通信情况下,是无法伪造来源 IP 的,也就是说,在 TCP/IP 协议中,可以伪造数据包来源 IP ,但这会让发送出去的数据包有去无回,无法实现正常的通信 但是一些DDoS攻击可以
后端IP获取来源
REMOTE_ADDR是远端IP,默认来自tcp连接客户端的Ip。可以说,它最准确,确定是,只会得到直接连服务器客户端IP。如果对方通过代理服务器上网,就发现。获取到的是代理服务器IP了。
HTTP_X_FORWARDED_FOR 为了能在大型网络中,获取到最原始用户IP,或者代理IP地址。对HTTp协议进行扩展,定义的实体头。 后端处理若这种方法,可能会造成XFF注入和伪造IP绕过访问限制
X-Real-IP X-Forwarded-For在无代理时可以理解为用户的IP地址,有反向代理时,先将REMOTE_ADDR赋给X-Real-IP,最后可以从X-Real-IP中获取用户的IP。
CDN-Src-IP CDN节点会以某种方式将源客户端的IP传递给源服务器

22、sql注入过滤了逗号,怎么弄?
1、可以用join
select id,ip from client_ip where 1>2 union select from ((select user())a JOIN (select version())b);
2、可以用from 1 for 1
select substr(database() from 1 for 1);
select mid(database() from 1 for 1);
3、offset
select * from news limit 0,1
等价于下面这条SQL语句
select * from yang limit 1 offset 0

22、了解过websocket吗?
它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。
其他特点包括:
(1)建立在 TCP 协议之上,服务器端的实现比较容易。
(2)与 HTTP 协议有着良好的兼容性。
(3)数据格式比较轻量,性能开销小,通信高效。
(4)可以发送文本,也可以发送二进制数据。
(5)没有同源限制,客户端可以与任意服务器通信。
(6)协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。

23、DDOS是什么? 非正常的数据包(syn,flood)等
分布式拒绝服务攻击(DDoS)是目前黑客经常采用而难以防范的攻击手段。DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。
随着计算机与网络技术的发展,计算机的,内存大大处理能力迅速增长增加,可以缓解DDoS攻击。但是多台傀儡机同时发送也受不了。
CC攻击
模拟多个正常用户不停地访问如论坛这些需要大量数据操作的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的请求,网络拥塞,正常访问被中止。这种攻击技术性含量高,见不到真实源IP,见不到特别大的异常流量。
CC攻击与传统DDoS的不同
攻击对象不同:DDoS针对IP,CC针对网页
流量大小不同:DDoS需要的流量更大
危害不同:DDoS危害大,CC危害时间长
门槛不同:DDoS需要大量傀儡机,CC更容易利用
被攻击的服务器有以下症状
有大量等待的TCP连接;
网络中充斥着大量的无用的数据包,源地址为假;
网络拥塞,受害主机无法正常和外界通讯;
造成死机。
DDoS防护
网络设备设施(加带宽、硬件防火墙、高性能设备)
负载均衡CDN、分布式集群防御
流量清洗服务
限制特定流量、过滤不必要服务和端口
Syn洪流
向服务器发送了SYN报文后突然死机或掉线,服务器第三次握手找不到客户端,会进行重试,就是重试这个时间,一般是分钟级的
IP欺骗DOS攻击
发假IP,连接不成功,服务器清空缓存重连的时间空隙
UDP洪水攻击
无用数据流占用带宽
Ping洪流攻击
声称自己的数据包大于64K,对方服务器看到这个声称后,内存分配错误,导致TCP/IP堆栈错误而死机
Land攻击
特别打造的SYN包,它的原地址和目标地址都被设置成目标服务器地址。接受服务器向它自己的地址发送 SYN-ACK消息,结果这个地址又发回ACK消息并创建一个空连接。被攻击的服务器每接收一个这样的连接都将保留,直到超时

24、当你输入一个网址会发生什么?
1)找域名对应IP(找dns、依次是浏览器缓存、系统缓存、路由器缓存、ISP缓存、递归搜索)
2)应用层-浏览器给Web服务器发送一个Http请求
3)传输层-HTTP数据包会嵌入到TCP报文中
4)网络层-TCP报文段嵌入IP数据包中
5)网络接口层-IP数据包嵌入到帧中,在网络中传输
6)网关转发到达相关服务器,请求对应端口的服务
7)服务器返回一个HTTP响应
8)浏览器以相同的步骤,读取HTTP响应的内容,解析页面

25、webshell检测思路?
静态检测 匹配特征码
动态检测 cmd bash等敏感应用异常启用
日志检测 HTTP异常请求模型检测
语法检测 关键危险函数的捕捉
计划任务 防止后门

26、GPC是什么?开启了怎么绕过
php.ini中的magic_quotes_gpc,默认为off,如何打开了,会实现addslashes()和stripslashes()的功能,对于从GET,POST,COOKIE输入的单引号、双引号、反斜线和NULL会加反斜线进行转义
绕过:
http的请求头的内容是可以在$_SERVER读取的,可将其作为传参变量
二次注入
编码解码绕过(UTF-7、GBK、二次编码等)
代码审计—单引号逃逸

27、web常用的加密算法有什么
单向散列加密 MD5、SHA、MAC
对称加密 AES、DES
非对称加密 RSA、RSA2
前端加密 RSA、MD5、AES
对称加密:加、解密使用的同是一串密钥 效率高 不安全
非对称加密:加、解密使用不同的密钥,互相加解密 效率低 安全 https就是这个

28、XSS除了获取cookies还能干嘛?
获取服务器真实ip
xss蠕虫
钓鱼攻击
前端JS挖矿
获取键盘记录

29、网络安全事件应急响应
取证,登录服务器
备份,检查服务器敏感目录
查毒(搜索后门文件 - 注意文件的时间,用户,后缀等属性),调取日志(系统日志,中间件日志,WAF日 志等);
处理,恢复备份(快照回滚,最近一次),确定入侵方法(漏洞检测,并进行修复)
溯源,查入侵IP,入侵手法(网路攻击事件)的确定等
记录,归档—-预防-事件检测-抑制-根除-恢复-跟踪-记录
通用漏洞的应对等其他安全应急事件

30、HTML5新的安全特性
iframe沙箱 默认除了显示静态页面以外,不准提交表单、不准弹窗、不准执行脚本
CSP内容安全策略
Flash加载取消

31、病毒,木马,蠕虫的区别?
病毒,木马,蠕虫统称为电脑病毒。
病毒是编制者在计算机程序中插入的破坏计算机功能或者数据的代码。
木马是指通过特定的程序来控制另一台计算机。(一句话木马)
蠕虫是一种能够利用系统漏洞通过网络进行自我传播的恶意程序。(XSS蠕虫)

病毒、蠕虫的共同特征是自我复制、传播、破坏电脑文件。
木马伪装、潜伏在电脑中、窃取资料、远程操控。

32、对于云安全的理解?
权限管理,内网威胁,信息泄露,过于依赖托管厂商

33、防止XSS,前端后端两个角度?
前端:尽量不要使用直接拼接 HTML 的方法,如果框架允许,使用 createElement之类的方法实现。或者采用比较成熟的渲染框架,如 Vue
CSP策略
后端:实体化编码、长度截取、过滤

34、虚拟机逃逸
虚拟机逃逸指的是突破虚拟机的限制,实现与宿主机操作系统交互的一个过程,攻击者可以通过虚拟机逃逸感染宿主机或者在宿主机上运行恶意软件。

35、如何防范羊毛党?
相应的活动门槛和限制(什么用户、次数)
对于有猫池、卡池的采用封IP、封用户、增加验证码、身份核验

36、Mysql一个@和两个@什么区别
一个@是 用户自定义的变量
两个@是 globa(全局变量)l或session变量

37、webshell已经上传如何禁止菜刀等工具连接
安全狗拦截、扫描木马删除、可以流量分析(蚁剑、冰蝎流量免杀)
绕过防护:改超全局变量法、改连接函数法@eval(base64_decode($_POST[action]));

38、一个互联网网站端口如何防护,发现入侵如何解决?
如何防护:防火墙、WAF、IPS(入侵防御系统)、IDS(入侵检测系统)
如何解决:关闭危险服务如SMB、RDP、数据库端口不对外网访问 封禁ip,查看日志。

39、NAT的两种模式
SNAT: 源网络地址转换
原理:修改数据包的源地址。源NAT改变第一个数据包的来源地址,它永远会在数据包发送到网络之前完成,数据包伪装就是一具SNAT的例子。
将内网发出的请求报文原地址转换成自己的地址发往远端服务器,对回来的响应报文在作做反向处理,类似网络代理。
DNAT:目的网络地址转换
原理:修改数据包的目的地址。Destination NAT刚好与SNAT相反,它是改变第一个数据包的目的地地址,如负载、端口转发和透明代理就是属于DNAT。
将内网服务端口映射在公网出口地址上。
NAT不仅能解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机

40、企业内部安全
物理威胁:门禁、监控、禁止USB设备接入、封闭PC、定时巡检
网络威胁:部署行为管控设备、可靠的网络结构、IP和MAC地址绑定,将网络行为分组、限制不必要的软件和通信协议、定期审核日志

41、eval和system的区别?
eval类型函数是代码执行
system类型函数是命令执行
eval函数里必须是一个符合php语法的语句,如果语句结尾没有分号会报错

<?php system(“whoami”); //whoami命令被执行 eval(“whoami”); //whoami命令不被执行 ?> <?php eval(“phpinfo();”); //phpinfo()被执行 system(“phpinfo()”); //phpinfo()不被执行 ?> <?php $num=1; eval(“\$a = $num;”); //有效,$a=1 system(“\$b = $num;”); //无效,$b=NULL ?>

代码执行函数:eval、assert、call_user_func、create_function、array_map
命令执行函数:system、passthru、exec、pcntl_exec、shell_exec、popen()、``

42、python 黑科技之迭代器、生成器、装饰器
迭代器:是一种访问集合元素的一种方式。 可迭代对象 list、set和dict
生成器:保存的是算法,又叫生成器函数。
装饰器:不改变原来函数功能的基础上增加其他功能。

43、缓冲区溢出原理和防御
通过往程序的缓冲区,写入超出其长度的内容,造成缓冲区的溢出,从而破坏程序的“堆栈”,使程序转而执行其它指令,以达到攻击的目的。造成“缓冲区溢出”的原因是,程序中没有仔细检查用户输入的参数。

44、进程和线程
进程是操作系统分配资源的最小单元, 线程是操作系统调度的最小单元。
一个应用程序至少包括1个进程,而1个进程包括1个或多个线程,
每个进程在执行过程中拥有独立的内存单元,线程在执行过程中共享内存。

45、MS08-067漏洞原理分析
445端口,SMB网络服务和MSRPC网络服务相关,缓冲区溢出造成的远程代码执行

46、http代理
普通代理:这种代理扮演中间人角色 类似burp
隧道代理:HTTP 客户端通过 CONNECT 方法请求隧道代理创建一条到达任意目的服务器和端口的 TCP 连接,并对客户端和服务器之间的后继数据进行盲转发。 类似机场节点

47、MySQL 4.1/5.0/5.5各版本的主要区别?
4.1 增加了子查询的支持,字符集增加UTF-8
5.0 增加了INFORATION_SCHEMA系统数据库
5.5 默认存储引擎更改为InnoDB、引入了一种新的性能架构P_S,用于mysql监控服务器运行时的性能

48、什么是CRLF注入攻击?(%0d%0a)(\r\n)
是一种当用户将回车换行字符插入到应用中而触发漏洞的攻击技巧。
当该字符与HTTP协议请求和响应的头部一起联用时就有可能会出现各种各样的漏洞,包括http请求走私和http响应拆分。
http请求走私:
缓存毒化—攻击者可以修改缓存中的内容然后不显示正常页面而显示恶意页面。
防火墙逃逸—攻击者通过构造数据包来逃避安全检查(两个包),通常会利用CRLF和构造超大的数据包。
请求劫持—攻击者可以通过该利用获取HttpOnly的cookie和http认证数据,类似于xss但是不需要攻击者和黑客进行交互。
http响应拆分:加入一些请求头,造成类似XSS的攻击效果

49、内网黄金票据、白银票据的区别和利用方式
(1)白银票据:抓取到了域控服务hash的情况下,在客户端以一个普通域用户的身份生成TGS票据,并且是针对于某个机器上的某个服务的,生成的白银票据,只能访问指定的target机器中指定的服务。
(2)黄金票据:直接抓取域控中账号的hash,在客户端生成一个TGT票据,那么该票据是针对所有机器的所有服务

50、预编译能否100%防sql注入? 不能
预编译原理:
先将查询语句固定
通过函数将传参变为字符串
拼接字符串去执行
你的关键字根本不会当作关键字去执行
$pdo->query(‘SET NAMES gbk’);
$var = “\xbf\x27 OR 1=1 /“;
$query = ‘SELECT FROM test WHERE name = ? LIMIT 1’;
$stmt = p d o − > p r e p a r e ( pdo->prepare( pdo>prepare(query);
s t m t − > e x e c u t e ( a r r a y ( stmt->execute(array( stmt>execute(array(var)); 类似于宽字节注入

51、reverse_tcp 和 bind_tcp 的区别?
(1)reverse_tcp 木马会主动连接目标服务器 测试机主动连接攻击机
(2)bind_tcp 木马会监听本地的端口 攻击机主动连接测试机
采用reverse的方法一般较为安全,因为是在测试机连接攻击机,所以一般不会被防火墙发现;而bind在测试机打开端口时很容易被安全软件和防火墙发现

52、谈谈对安全的理解
互联网的发展便捷了生活,也带来了安全问题
安全是相对的,打破安全壁垒的代价如果高于安全保护的价值,就可以说是安全的
渗透测试中安全的本质是一种信任机制,是否每次都对用户发来的请求做安全验证
安全是一群不走寻常路、不按常规出牌的人摸索出来的
攻防相互促进(漏洞填堵、绕过)

53、CMS指纹规则
Website 官方网站
JS文件
Headers 匹配的请求头信息
Cookies 匹配的cookies字段
Version 版本信息
Product 产品名称匹配
Meta特征
URI特征

54、如何保护dom不被修改 防止dom xss
浏览器写入页面渲染前先转义
不要使用eval函数处理不可控的外部数据 JS中
使用filter.js库 filter.js由一系列针对常见业务场景下造成DOM XSS的恶意数据开展过滤的函数组成。

55、python爬虫的常见问题
爬虫常用模块:requests、BeautifulSoup、lxml、re、xpath、selenium、
数据存储、txt/csv/mysql
Selenium(无界面浏览器)突破JS加密
传统爬虫多线程 现在提倡异步IO协程 异步IO模块主要有aiohttp、aiomysql、asyncio
推荐的爬虫策略:爬取之后写入数据库,单独写提取、过滤办法 防止需求改了重新爬取
网络池解决增量爬取、断点续爬、去重
GIL 全局解释器锁 为保证线程安全的资源锁

56、IDS/IPS防护原理及绕过思路
IDS工作在网络层,旁路部署,通过抓取和分析网络流量来发现攻击;
IPS一般也是在网络层旁路,可以理解为具备阻断能力的IDS,是IDS的升级版(也有IDS检测到攻击通知阻断设备执行阻断动作的设备联动模式),可以覆盖网络层和应用层;
WAF是在应用层防护Web攻击的程序,一般是跟Web接入层对接,可旁路可串行,仅能覆盖应用层
绕过:
1、TCP分片重组
2、IP分片Python下的组件Scapy
3、伪造TCP状态
4、IPv6 正在服役的IDS/IPS/WAF不一定支持

57、运营商(或其他)网络劫持

最后

终极手撕架构师的学习笔记:分布式+微服务+开源框架+性能优化

image

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

有IDS检测到攻击通知阻断设备执行阻断动作的设备联动模式),可以覆盖网络层和应用层;
WAF是在应用层防护Web攻击的程序,一般是跟Web接入层对接,可旁路可串行,仅能覆盖应用层
绕过:
1、TCP分片重组
2、IP分片Python下的组件Scapy
3、伪造TCP状态
4、IPv6 正在服役的IDS/IPS/WAF不一定支持

57、运营商(或其他)网络劫持

最后

终极手撕架构师的学习笔记:分布式+微服务+开源框架+性能优化

[外链图片转存中…(img-75rItDkJ-1714833283140)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 28
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值