腾讯2021实习笔试总结----安全技术类

具体题目如下:
包括内容:C语言,汇编指令,常见攻击场景、原理以及防御,数据结构,Linux,计算机网络,docker。

  1. C语言的函数malloc考察
  2. DDOS攻击
  3. 破解密码工具
  4. C语言的指针地址
  5. inux路径,/etc/fstab
  6. 汇编语言指令
  7. XXS payload和防御
  8. HTTP CC攻击
  9. 继承和派生
  10. SSRF 防御
  11. SPF
  12. 排序考察
  13. SSH命令
  14. docker
  15. 安全存储密码
  16. passthe ticket
  17. 命令注入场景
  18. HTTP Request smugging
  19. kerberos-AS-REQ
  20. PHP webshell
  21. URL 访问的格式参数(#,/)
  22. HTTP 状态码

在这里插入图片描述

在这里插入图片描述
第一道大题描述:

Github实现信息泄露检测系统,员工邮箱账号和密码 ,域名:test.com,邮箱后缀:@test.com
问题1:Github代码量太大,如何处理
问题2:如何精确定位信息泄露位置
问题3: 如何对抗反爬机制,列出可能的框架或者工具。

第二道题题目:手撕代码
在这里插入图片描述
补充:
Python实现手撕代码部分

#improt
# def string_match() #计算匹配对数
def string_match(num,str_num):
    
    m = str_num             
    #每行字符串,最长不超过100个字符
    for i in m:
        if len(i) > 100:
            print("每行字符串,最长不超过100个字符")
        else:
            pass            
        for j in i:
            left=0  #左符号数量
            right=0 #右括号数量
            str_left=['(','[','{']
            str_right=[')',']','}']
            for z in range(len(j)):
                if j[z] in str_left:
                    left=left+1
                if j[z] in str_right:
                    right=right+1
            if left!=right :
                num_match= -1
                print("括号不匹配:",num_match)
            else:
                num_match= left
                print("括号匹配数量:",num_match)
                  
#main
if __name__ == "__main__":
    str_num=[]
    while True:
        print("Please enter a number:")
        num = int(input())
        print("Please enter a string:")
        for i in range(num):
            str_num.append(list(map(str,input().split('\n'))))   
        string_match(num,str_num)

输出

Please enter a number:
4
Please enter a string:
((s[i]s{
    
    e})se)
((kky(s))
[(yese]
[2345]
括号匹配数量: 4
括号不匹配: -1
括号不匹配: -1
括号匹配数量: 1
Please enter a number:

截图:
在这里插入图片描述
手撕代码总结:

Python 实现以换行符为界,进行多行输入

list(map(str,input().split('\n')))
  1. split() :通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串.
  2. input(): 输入数据
  3. map():第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表
  4. list() :列表化,可修改。

处理左右符合,左边符合声明一个,右边符合声明一个。遍历字符串,比较左右符合出现次数,就可以判断。

提高难度:
计算出-1的时候,缺哪种符号,缺几个?
代码实现。

参考资料

猜你喜欢

转载自blog.csdn.net/weixin_41603028/article/details/115046539