腾讯测开面经
腾讯测开面经感悟腾讯是我第二家面试的企业,从3.12的一面到3.20的三面被毙,感觉腾讯的效率还是蛮高的,每次也十分准时。或许是我面试的次数比较少,又或者是面试官给我的感觉没有那么大的压迫感,我甚至妄想过能够在这次直冲hr面,当然事实给了我教训。说真的一觉醒来看到页面变灰还蛮难受的,但是这就说明实力还是不足,也需要尽快调整心态,做之后的准备。
一面一面使用腾讯会议,内容相对较少,问了一些计网相关的知识,还问了一下项目中的内容,最后写了两道算法题,一个是链表去重,一个是找出最大子串和(腾讯会议中的那个写代码的功能蛮阴间的,没有缩进,也没有自动补全)最后和我介绍了一下部门大概是做什么的
二面二面是电话面试,同样压力比较小,问题大致如下:
对项目中使用的算法之类的进行了询问
TCP握手和挥手的过程
TCP协议如何实现可靠传输
HTTP和HTTPS的区别
HTTPS实现安全通信的流程
HTTP请求的状态码有哪些
如何测试一个登录页面
docker的启动和镜像创建
linux中如何获取文件中最后一列的内容
如何查看进程,有没有用过top命令
写一条命令杀死全部PID中带有”txt”的进程
说说如 ...
如何在github上传文件
如何在github上传文件创建新的仓库
创建完成之后看到仓库内容如下所示
使用Git bash进行上传初始化本地仓库在要上传的文件夹中打开git bash,执行以下命令来初始化一个新的 Git 仓库并创建初始的主分支(master)
1git init
修改本地config文件打开config文件,加入图中user部分的两句,这样可以省去之后的两条命令,不过写命令道理也是一样的
命令如下
12git config --global user.email "注册git的邮箱" git congig --global user.name "github的账户名"
切换默认分支默认情况下,GitHub 仓库的主分支名称是 “master”,但为了更加包容和尊重的命名,GitHub 已经将默认分支更改为 “main”。我们可以通过以下命令将本地仓库的默认分支切换为 “main”
1git branch -m master main
使用SSH连接到远程仓库为了增强安全性和便捷性,可以使用 SSH 协议来推送更改,而不是使用 HTTPS ...
第二次配置Hexo中的问题
配置node.js中的问题openssl冲突问题高于18.0的版本在使用过程中会与openssl发生冲突,重新下载更低版本即可,但是在测试过程中发现14.21.3也会出现此bug,不知道是特例还是其他,此次下载的是15.14.0,没有冲突的问题
下载.msi后缀的release文件可以减少配置环境变量的步骤
默认路径的问题把node.js安装在其他盘之后需要调整缓存和全局安装模块文件夹的位置并进行验证
1234npm config set prefix "D:\node\node_global"npm config set cache "D:\node\node_cahce"npm config get prefixnpm config get cache
文件夹权限的问题在配置好路径之后进行npm install可能会出现权限不足的问题,把文件夹权限设置为完全控制即可
npm install源的问题之前很多教程中给出的registry.npm.taobao.org淘宝源证书已经过期,应该换为最新的淘宝源
1npm config set reg ...
Hexo常用指令整理
Hexo123npm install hexo -g #安装 npm update hexo -g #升级 hexo init #初始化
简写hexo n "我的博客" == hexo new "我的博客" #新建文章hexo p == hexo publishhexo g == hexo generate#生成hexo s == hexo server #启动服务预览hexo d == hexo deploy#部署
服务器hexo server #Hexo 会监视文件变动并自动更新,无须重启服务器。hexo server -s #静态模式hexo server -p 5000 #更改端口hexo server -i 192.168.1.1 #自定义 IP
hexo clean #清除缓存 网页正常情况下可以忽略此条命令hexo g #生成静态网页hexo d #开始部署
监视文件变动hexo generate #生成静态文件hexo gen ...
Shellcode注入实验
目标 探索和理解系统和应用程序的安全性弱点,以了解如何潜在地通过恶意 shellcode 执行操作系统或应用程序中的非授权操作。了解shellcode注入原理,理解给出的弹出对话框的汇编代码,通过淹没静态地址来实现shellcode的代码植入,通过跳板来实现shellcode的代码植入,尝试修改汇编语句的shellcode实现修改标题等简单操作
测试步骤与结果了解shellcode注入原理 Shellcode 注入是一种计算机安全领域中的术语,指的是将恶意代码(shellcode)注入到目标计算机系统或应用程序中,以实现各种恶意活动。这种技术通常用于渗透测试、恶意软件编写、漏洞利用和攻击等领域。以下是 shellcode 注入的一般原理:
Shellcode 注入的原理是将精心构建的二进制代码(通常是汇编语言编写)注入到目标系统或应用程序的内存空间中,然后执行该代码以实现攻击者所期望的功能。这个过程通常包括以下步骤:
寻找目标: 攻击者首先需要确定目标系统或应用程序中的漏洞或弱点,以确定可以注入 shellcode 的入口点。这可能包括查找已知漏洞、分析网络流量、审计应 ...
栈溢出实验
栈溢出实验目标 通过对程序输入的密码的长度、内容等修改,实现缓冲区溢出的发生实验,栈溢出问题涉及到计算机体系结构、内存管理、编程语言和程序执行原理等多个领域。通过实验,可以深入了解计算机系统的底层工作原理,从而更好地理解计算机科学和计算机工程。
测试步骤与结果淹没相邻变量改变程序流程实验源文件分析 观察源文件中的判断函数,可以看到strcpy()函数没有限制长度,因此可以确定这其中有栈溢出的漏洞
x32dbg中定位子函数 通过x32dbg,我们根据主函数我们找到了verify_password函数所在位置,并进行分析,尝试了解这个函数中的栈结构
栈结构分析 我们输入的字符串是12345+6,从图中的栈结构里我们看到,从0019FAC8地址往下的栈中装的是我们的输入值转换为的ASCII码,也就说明这一段是分给strcpy的缓冲区,通过之前的分析,我们知道了在0019FAD0中装的是经过strcmp函数判断之后的返回值,若为0则表示与预设密码相同,而这个变量在buffer缓冲区的下面,说明先进栈,也就是authenticated变量的值,于是我们就可以知道如果将输入的 ...