迫于水平有限,求几道面试安全专家的问题

2019-06-27 10:19:14 +08:00
 gcc2000

小弟的公司最近要面一个高级安全专家的职位,老板让我准备几个技术问题,奈何小弟并不是搞安全的,水平有限,求大神随便出几个题目,以镇住面试者,不胜感谢!

2708 次点击
所在节点    信息安全
2 条回复
hu5ky
2019-06-27 15:51:20 +08:00
问:拿到一个待检测的站,你觉得应该先做什么?
答:收集信息 whois、网站源 IP、旁站、C 段网站、服务器系统版本、容器版本、程序版本、数据库类型、二级域名、防火墙、维护者信息另说...

问:如何突破注入时字符被转义?
答:宽字符注入
hex 编码绕过

问:代码审计常见易出问题函数
答:eval,preg_replace+/e,assert,call_user_func,call_user_func_array,create_function

文件读取:file_get_contents(),highlight_file(),fopen(),read file(),fread(),fgetss(), fgets(),parse_ini_file(),show_source(),file()等

命令执行:system(), exec(), shell_exec(), passthru() ,pcntl_exec(), popen(),proc_open()

问:token 和 referer 做横向对比,谁安全等级高?
答:token 安全等级更高,因为并不是任何服务器都可以取得 referer,如果从 HTTPS 跳到 HTTP,也不会发送 referer。并且 FLASH 一些版本中可以自定义 referer。
但是 token 的话,要保证其足够随机且不可泄露。(不可预测性原则)

问:对 referer 的验证,从什么角度去做?如果做,怎么杜绝问题
答:对 header 中的 referer 的验证,一个是空 referer,一个是 referer 过滤或者检测不完善。
为了杜绝这种问题,在验证的白名单中,正则规则应当写完善。

问:涉及到 Jsonp 的安全攻防内容有哪些?
答:JSON 劫持、Callback 可定义、JSONP 内容可定义、Content-type 不为 json。

问:mysql 的网站注入,5.0 以上和 5.0 以下有什么区别?
答:5.0 以下没有 information_schema 这个系统表,无法列表名等,只能暴力跑表名。
5.0 以下是多用户单操作,5.0 以上是多用户多操做。

问:宽字节注入产生原理以及根本原因
答:产生原理
在数据库使用了宽字符集而 WEB 中没考虑这个问题的情况下,在 WEB 层,由于 0XBF27 是两个字符,在 PHP 中比如 addslash 和 magic_quotes_gpc 开启时,由于会对 0x27 单引号进行转义,因此 0xbf27 会变成 0xbf5c27,而数据进入数据库中时,由于 0XBF5C 是一个另外的字符,因此\转义符号会被前面的 bf 带着呗"吃掉",单引号由此逃逸出来可以用来闭合语句。

根本原因
character_set_client(客户端的字符集)和 character_set_connection(连接层的字符集)不同,或转换函数如,iconv、mb_convert_encoding 使用不当。
smallpython
2019-07-04 13:55:08 +08:00
楼上随手一打就这么多字,厉害

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/577891

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX