Java教程

2022春招记录

本文主要是介绍2022春招记录,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

pingcap一面

自我介绍

面试题

CTF培训相关(没问)

  1. SQL注入相关知识,从基础的HTML+CSS到SQL增删改查,再到Mysql注入天书(学长编写),用sqli-labs实操教学
  2. 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的特性来绕过这个限制,比较经典的三种方法是:

  1. 利用异或,两个字符串异或出我们需要数字或者字母,需要用脚本fuzz

  2. 利用汉字取反,一些汉字通过取反操作也能变成字母,也需要fuzz

  3. 利用自增/减符号,我们知道字符"A"++="B",所以只要构造出字符A,通过自加键运算就可以绕过限制

    <?php
    $_=[].'';   //得到"Array"
    $___ = $_[$__];   //得到"A",$__没有定义,默认为False也即0,此时$___="A"
    

五字符getshell

即允许用户执行命令,但是命令长度<=5要怎么getshell,这里用到比较多Linux的知识。

  • 通过反斜杠可以实现命令换行
  • 通过>x可以创建名为x的空文件
  • ls -t可以让创建的文件按照时间排序

那我们的思路是:通过新建特殊文件名的文件,让文件名最后以反斜杠结尾,再利用ls -t排序,最后用管道符输入进文件里,再用sh命令执行命令。

自己挖的XSS(没问)

  1. 漏洞点是在课程的讨论区里,旧版本来也有,之后改了,直接实体化编码尖括号,绕不过
  2. 然后我看到站点有个体验新版,是全新的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. 面试流程?1、2、3轮技术面,之后一轮划水面。

需要改进

Web基础

赶紧补完啊,铸币。

代码审计

在看了,在看了.jpg

内网安全

我内网学的是个勾8,快学

完善简历

简历中突出自己的优势点,不要等HR问,给HR一个大致影响。

这篇关于2022春招记录的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!