Security Interview

0x20 深信服

来源:vvmdx/Sec-Interview-4-2023,已转换为博客静态页面。

0x20 深信服

来源:https://github.com/vvmdx/Sec-Interview-4-2023
说明:本文件按原面经问题整理答题要点,答案为面试复习口径。

1. 宽字节注入原理,是只有 gbk 编码的才存在宽字节注入吗?

参考完整回答(宽字节注入):

宽字节注入常见于 GBK/Big5 等多字节编码环境。应用为了防 SQL 注入会给引号加反斜杠转义,但攻击者构造特定前导字节后,反斜杠可能和前一个字节组合成合法汉字,导致引号逃逸,SQL 语义被改变。

修复不能只靠 addslashes。应该统一使用 UTF-8,正确设置客户端、连接和数据库字符集,例如 set names utf8mb4;最重要的是使用预编译参数化查询,让输入不参与 SQL 语法解析。

2. php 反序列化原理

参考完整回答(PHP代码审计):

PHP 审计我会先看入口文件、路由规则、控制器、公共函数和配置项,然后追踪 $_GET、$_POST、$_COOKIE、$_REQUEST、上传文件和 Header 到危险函数。重点函数包括 eval/assert、system/exec、include/require、unserialize、file_get_contents/file_put_contents、move_uploaded_file、SQL 执行函数和模板输出。

框架项目还要理解框架本身的过滤、ORM、路由和模板机制,不能只搜函数。比如 ThinkPHP 要看版本历史漏洞、控制器方法暴露、参数绑定、模型查询和模板渲染;原生 PHP 则要特别关注变量覆盖、文件包含、上传目录执行权限和弱类型比较。

3. 内网一台机器,只有一个 mssql 的服务账户权限,如何进行后续的利用

参考完整回答(内网渗透/横向):

内网渗透我会先确认当前落点的权限、网段、路由、DNS、域环境和出网情况。然后做低噪声主机发现和端口识别,重点关注域控、文件共享、数据库、中间件、运维平台和代码仓库。接着收集凭证线索,例如配置文件、历史命令、浏览器缓存、数据库连接串、共享目录和内存凭证;如果授权允许,再验证横向移动和权限提升路径。

防守视角我会补充:内网安全不能只靠边界防火墙,要做分区分域、最小权限、凭证隔离、禁用明文密码和本地管理员复用、开启 EDR、监控东西向流量、审计异常登录和远程执行行为。

4. rsa 算法原理/aes 算法原理

参考完整回答(加密/签名):

对称加密是同一把密钥加解密,例如 AES,速度快,适合大量数据传输,但密钥分发是问题。非对称加密使用公钥和私钥,例如 RSA/ECC,公钥可以公开,私钥保密,适合密钥交换和数字签名,但性能较慢。哈希是单向摘要,例如 SHA-256,用于完整性校验;HMAC 是带密钥的摘要,能防止消息被篡改。

数字签名的流程是先对消息做哈希,再用私钥签名,接收方用公钥验签。它能证明消息来自私钥持有者、内容未被篡改,并提供不可否认性。TLS 里通常用非对称算法完成身份认证和密钥交换,再用对称加密传输数据。

5. 一台机器不能出网,如何把一个 exe 文件放到对应的目标机器上去(dmz 区)

参考完整回答(一台机器不能出网如何把一个exe文件放到对应的目标机器上去dmz区):

这题我会这样完整回答:针对“一台机器不能出网,如何把一个 exe 文件放到对应的目标机器上去(dmz 区)”,我会先说明它对应的安全场景和要解决的问题,再给出一个具体例子。比如在真实测试或审计中,我会先确认入口在哪里、用户输入是否可控、数据经过哪些处理、最终进入哪个敏感操作;验证时尽量使用低风险方式证明影响,例如观察响应差异、日志、时间延迟、回连记录或权限边界,而不是破坏数据。修复时从代码、配置和权限三方面处理:代码层使用安全 API、参数化、白名单和输出编码;配置层关闭危险功能、升级组件、限制网络和文件权限;权限层坚持最小权限,避免单点漏洞扩大影响。最后我会补充复测方法,用原触发条件验证漏洞不可再利用,并确认正常业务流程仍然可用。

返回安全面经目录