pingcap一面
自我介绍
略
面试题
CTF培训相关(没问)
- SQL注入相关知识,从基础的HTML+CSS到SQL增删改查,再到Mysql注入天书(学长编写),用sqli-labs实操教学
- AWD相关知识(平台搭建、AWD基本流程、常见的攻击脚本和Waf、权限维持,比如不死马编写)
SQL注入判断数据库类型?(没问)
1、特定函数判断:mysql、mssql用len(),oracle用length()
2、注释符判断:"/*"是mysql的注释符,"--"是oracle和mssql的注释符,另外oracle不支持用";"做多行查询
3、错误信息判断:触发sql语法错误,根据报错信息判断数据库类型
SQL注入布尔盲注(问了)
考察手工注入,if(substr((sql_injection),1,1)='a',1,0)
这种
有价值的CTF题目(问了)
无数字字母Webshell
<?php
if(!preg_match('/[a-z0-9]/is',$_GET['shell'])) {
eval($_GET['shell']);
}
顾名思义,eval中不允许传入数字和字母该怎么getshell,考察的是我们怎么利用PHP的特性来绕过这个限制,比较经典的三种方法是:
-
利用异或,两个字符串异或出我们需要数字或者字母,需要用脚本fuzz
-
利用汉字取反,一些汉字通过取反操作也能变成字母,也需要fuzz
-
利用自增/减符号,我们知道字符
"A"++="B"
,所以只要构造出字符A,通过自加键运算就可以绕过限制<?php $_=[].''; //得到"Array" $___ = $_[$__]; //得到"A",$__没有定义,默认为False也即0,此时$___="A"
五字符getshell
即允许用户执行命令,但是命令长度<=5要怎么getshell,这里用到比较多Linux的知识。
- 通过反斜杠可以实现命令换行
- 通过
>x
可以创建名为x的空文件 -
ls -t
可以让创建的文件按照时间排序
那我们的思路是:通过新建特殊文件名的文件,让文件名最后以反斜杠结尾,再利用ls -t
排序,最后用管道符输入进文件里,再用sh命令执行命令。
自己挖的XSS(没问)
- 漏洞点是在课程的讨论区里,旧版本来也有,之后改了,直接实体化编码尖括号,绕不过
- 然后我看到站点有个体验新版,是全新的UI界面,我试了一下发现有Waf但是没完全过滤,Fuzz了一会是过滤了小括号,用URL编码就成功弹窗了
渗透测试思路(问了)
1)信息收集
a. 查询站点的相关信息(真实ip,系统类型,版本,开放端口,WAF等)
b. 网站指纹识别(包括,cms,cdn,证书等),dns记录
c. whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等)
d. 全资子公司收集,子域名收集,C段等
2)漏洞挖掘
1> 对主站进行人工检测(burp+xray被动扫描),先挖一些xss、sql、越权漏洞、后台弱密码
2> 同时对收集到的属于目标资产的站点(包括子站,全资子公司),用工具批量扫漏洞(goby、awvs)
3> 验证检测出的漏洞,争取拿webshell
3)权限提升
a) mysql提权,serv-u提权,linux内核版本提权等
4)清除测试数据 | 输出报告
i 日志、测试数据的清理
ii 总结,输出渗透测试报告,附修复建议
5) 复测
验证并发现是否有新漏洞,输出报告,归档
提问
- 工作时间,是否加班?对标国外公司,结果导向,上班可晚可早。
- 面试流程?1、2、3轮技术面,之后一轮划水面。
需要改进
Web基础
赶紧补完啊,铸币。
代码审计
在看了,在看了.jpg
内网安全
我内网学的是个勾8,快学
完善简历
简历中突出自己的优势点,不要等HR问,给HR一个大致影响。