首页 > 其他分享 >计算机/网安 面试例题(七)

计算机/网安 面试例题(七)

时间:2024-03-23 21:56:26浏览次数:19  
标签:1.1 -- ip 扫描 Content 面试 特征 网安 例题

安全工具

1.CS工具使用

  渗透神器

2.Nmap常用命令

nmap hostname/ip或者多个ip或者子网192.168.123.*

  • -iL ip.txt 扫描ip.txt的所有ip
  • -A 包含了-sV,-O,探测操作系统信息和路由跟踪。一般不用,是激烈扫描-O 探测操作系统信息
  • -sV 查找主机服务版本号
  • -sA 探测该主机是否使用了包过滤器或防火墙
  • -sS 半开扫描,一般不会记入日志,不过需要root权限。
  • -sT TCP connect()扫描,这种方式会在目标主机的日志中记录大批的链接请求以及错误信息。
  • -sP ping扫描,加上这个参数会使用ping扫描,只有主机存活,nmap才会继续扫描,一般最好不加,因为有的主机会禁止ping,却实际存在。
  • -sN TCP空扫描
  • -F 快速扫描
  • -Pn 扫描之前不使用ping,适用于防火墙禁止ping,比较有用。
  • -p 指定端口/端口范围
  • -oN 将报告写入文件
  • -v 详细信息
  • -T<0-5> 设定速度

使用脚本

  • --script all 使用所有脚本
  • --script=sql.injection.nse sql注入
  • --script="smb*"  扫smb系列

一、4 大功能:分别为主机发现(参数-sn)、端口扫描(-sS -sU)、版本侦测(–sV)、OS 侦测(-O)

二、扫描方式有:tcp connect()、TCP SYN scanning、TCP FIN scanning、Null scan等,

三、绕过 ping 扫描参数为:nmap -Pn XXX.XXX.XXX.XXX

四、漏洞检测可直接 nmap 目标 --script=auth,vuln

3.SQLmap

  • -u 单个URL -m xx.txt 多个URL
  • -d "mysql://user:[email protected]:3306/dvwa"  作为服务器客户端,直接连接数据库
  • --data post/get都适用
  • -p 指定扫描的参数
  • -r 读取文件
  • -f 指纹信息
  • --tamper 混淆脚本,用于应用层过滤
  • --cookie --user-agent --host等等http头的修改
  • --threads 并发线程 默认为1
  • --dbms MySQL<5.0> 指定数据库或版本
  • –level=LEVEL 执行测试的等级(1-5,默认为 1)
  • –risk=RISK 执行测试的风险(0-3,默认为 1) Risk升高可造成数据被篡改等风险–current-db / 获取当前数据库名称
  • –dbs 枚举数据库管理系统数据库
  • –tables 枚举 DBMS 数据库中的表
  • –columns 枚举 DBMS 数据库表列
  • -D DB 要进行枚举的数据库名
  • -T TBL 要进行枚举的数据库表
  • -C COL 要进行枚举的数据库列
  • -U USER 用来进行枚举的数据库用户

常用的tamper

  •  base64encode.py #转为b64编码
  •  charencode.py url编码
  •  chardoubleencode.py 双URL编码
  •  unmagicquotes.py 宽字节
  •  randomcomments.py 用/**/分割SQL关键字
  •  space2plus.py space2comment.py space2xxxx.py 替换空格为xx

 Post注入

   sqlmap -r "数据包地址" -p "参数" -dbms 数据类型

 Get注入

   sqlmap -u "注入点地址" --dbms 参数

sqlmap进行交互式写shell

  1-前提条件:最高权限、知道web网站绝对路径、能获取到cookie

  2-sqlmap.py -u "注入点地址" --cookie="cookie值" --os-shell  -echo “一句话木马”>网站的绝对路径 

  3-输入web网站的绝对路径 

  4-传木马

4.菜刀、蚁剑、冰蝎流量特征

菜刀特征

  使用了base64的方式加密了发送给“菜刀马”的指令,其中的两个关键payload z1和z2,这个名字是可变的

蚁剑特征

  默认的USER-agent请求头 是 antsword xxx,但是 可以通过修改:/modules/request.js 文件中 请求UA绕过

  其中流量最中明显的特征为@ini_set("display_errors","0");这段代码基本是所有WebShell客户端链接PHP类WebShell都有的一种代码

  蚁剑混淆加密后还有一个比较明显的特征,即为参数名大多以“_0x......=”这种形式(下划线可替换),所以以_0x开头的参数名也很可能就是恶意流量

冰蝎

  看包没有发现什么特征,但是可以发现它是POST请求的

  1、Accept头有application/xhtml+xmlapplication/xmlapplication/signed-exchange属于弱特征(UA头的浏览器版本很老)

  2、特征分析Content-Type: application/octet-stream 这是一个强特征查阅资料可知octet-stream的意思是,只能提交二进制,而且只能提交一个二进制,如果提交文件的话,只能提交一个文件,后台接收参数只能有一个,而且只能是流(或者字节数组);很少使用

冰蝎2特征

  默认Accept字段的值很特殊,而且每个阶段都一样冰蝎内置了十余种UserAgent ,每次连接 shell 会随机选择一个进行使用。但都是比较老的,r容易被检测到,但是可以在burp中修改ua头。

  Content-Length: 16, 16就是冰蝎2连接的特征 

冰蝎3特征

  冰蝎3取消动态密钥获取,目前很多waf等设备都做了冰蝎2的流量特征分析,所以3取消了动态密 钥获取;php抓包看包没有发现什么特征,但是可以发现它是POST请求的 

  1)Accept头application/xhtml+xmlapplication/xmlapplication/signed- exchange属于弱特征 

  2)ua头该特征属于弱特征。通过burp可以修改,冰蝎3.0内置的默认16个userAgent都比较老。现实生活中很少有人使用,所以这个也可以作为waf规则特征 

  jsp抓包特征分析Content-Type: application/octet-stream 这是一个强特征查阅资料可知 octet-stream的意思是,只能提交二进制,而且只能提交一个二进制,如果提交文件的话,只能提交 一个文件,后台接收参数只能有一个,而且只能是流(或者字节数组);很少使用。

5.哥斯拉流量特征

PHP连接特征

(1)php_XOR_BASE64
设置代理,用burp抓包。截取到特征发**现请求都含有"pass**="第一个包第二个包

POST /hackable/uploads/base.php HTTP/1.1
User-Agent: Java/1.8.0_131
Host: 192.168.0.132:777
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Content-type: application/x-www-form-urlencoded

Content-Length: 51
Connection: close
pass=AWEzAAN%2FWFI3XHNGaGBQWDEHPwY4fSQAM2AIDw%3D%3D

jsp连接特征

(1)java_AES_BASE64

POST /gejs.jsp HTTP/1.1
User-Agent: Java/1.8.0_131
Host: 192.168.0.132:555
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Content-type: application/x-www-form-urlencoded

Content-Length: 33035
Connection: close
pass=0%2FMHwbBP6vuX0WyYztOU9DrUPcD0Zwx0KhArobwwHBDld91Y8xrUqPxo40dK oSbGd%2FxDF4yJopsUIHMI8NMfFUl0oxBzWPyMdTmxAntagmMGLGiqB1ckbl5G%2Fla pnewWrvhhdqtj0eT2zvUes%2Bg6yhFGVjLstoOdJxkYPY6XB70AeffugDlCkUYAyHyr TymPocUs14sKD5ItAn5147goo9TAdBH0kgSNlxbqxMqTPbgjKljsvC53fFB%2BO5jKU BCBvsCR1W%2FLhPA42qp1e%2Fl0cmUohwSAT3N0s9r%2FzRVlB3lQkXnV895dz48DyP bYjJp%2Bhpf1qFjbCy1o8Zd771ObGbKvWr1O5PZOTNKB

**与php请求一样都含有"pass="而且发起连接时服务器返回的Content-Length是0**

(2)java_AES_RAW

POST /rwj.jsp HTTP/1.1
User-Agent: Java/1.8.0_131
Host: 192.168.0.132:555
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Content-type: application/x-www-form-urlencoded

Content-Length: 23360
Connection: close
Óó•Á°Oêû•Ñl•ÎÓ•ô:Ô=Àôg•t*•+
¡¼0••åwÝXó•Ô¨ühãGJ¡&ÆwüC•••¢••s•ðÓ••It£•sXü•u9±•{Z•c•,hª•W$n^FþV©•ì•®øav«cÑäöÎõ•³è:Ê
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: JSESSIONID=1C26762D96A561D4A63BDE104E22930C; Path=/; HttpOnly
Content-Type: text/html
Content-Length: 0
Date: Wed, 18 Nov 2020 15:19:56 GMT
Connection: close

6.wireshark简单的过滤规则

过滤 ip

  过滤源 ip 地址:ip.src==1.1.1.1;,目的 ip 地址:ip.dst==1.1.1.1; 过滤端口:

  过滤 80 端口:tcp.port==80,源端口:tcp.srcport==80,目的端口:tcp.dstport==80

协议过滤

  直接输入协议名即可,如 http 协议 http

http 模式过滤

  过滤 get/post 包 http.request.mothod=="GET/POST"

7.MSF基本使用方法

常用命令 

  background #让meterpreter处于后台模式 

  sessions -i number #与会话进行交互,number表示第n个session quit #退出会话 

  shell #获得命令行 

  cat c:\\boot.ini #查看文件内容 

  getwd #查看当前工作目录 

  work directory upload /root/Desktop/netcat.exe c:\\ # 上传文件到目标机上 

  download 0xfa.txt /root/Desktop/ # 下载文件到本机上 

  edit c:\\boot.ini # 编辑文件 

  search -d d:\\www -f web.config #search 文件 ps #查看当前活跃进程 migrate pid #将Meterpreter会话移植到进 程数位pid的进程中 

  execute -H -i -f cmd.exe #创建新进程cmd.exe,-H不可 见,-i交互 getpid #获取当前进程的

  pid kill pid #杀死进程 getuid #查看权限 

  sysinfo #查看目标机系统信息,如机器名,操作系统等 

  getsystem #提权操作 

  timestompc:/a.doc -c "10/27/2015 14:22:11" #修改文件的创建时间 

迁移进程   

  1-meterpreter > ps

  2-自行选择PID

  3-meterpreter > migrate pid

木马免杀

  免杀可以先fuzz定位出被查杀的语句,然后对被查杀那部分进行一波操作,像是加密啊、编码啊、动态执行啊什么的,或者拆分拼接啊,特定条件执行啊,方法很多,主要就是找到那里被杀了,然后对被杀的部分进行处理。

00-无文件执行木马的方式有哪些?

  • powershell(脚本解析器) --->powershell.exe(应用程序)
  • VB.script(脚本解析器) --->cscript.exe(应用程序)
  • bat处理 (脚本解析器) --->cmd.exe(应用程序)
  • javaSrtipt(脚本解析器) --->mshta.exe(应用程序)

01-shellcode免杀

  1.编码

  2.加壳 

  3.混淆 

  4.分离免杀

  5.特征码修改

  6.添加无用逻辑语句

  7.重写api

02-分离免杀

  分为加载器和shellcode两部分,一般将shellcode存储在网页或者图片中,然后加载器远程加载存在shellcode的网页或者图片之类的

03-powershell远程加载

  可以远程加载mimikazt,远控文件,exe可执行文件实现无文件落地

标签:1.1,--,ip,扫描,Content,面试,特征,网安,例题
From: https://www.cnblogs.com/3cH0-Nu1L/p/18091661

相关文章

  • 操作系统&进程——面试高频问题
    一.概念  一个程序运行起来,就会对应一个进程(process),进程也是系统分配的基本单位。 二.PCB的几个核心属性 1.pid进程标识符.                  同一个机器,同一个时刻,进程id一定是不同.`   2.内存指针      进程运行时......
  • 计算机/网安 面试例题(六)
    反序列化00-序列化和反序列化序列化:把内存中的对象以二进制的形式保存在文本中(输出流)反序列化:把文本中的对象读出来到内存中(输入流)反序列化用到的函数序列化:serialize反序列化:unserialize01-常见反序列化的流量特征像这种st2045、068、shiro反序列化、fast......
  • 100道面试必会算法-09-最大子数组和(初探动态规划)
    100道面试必会算法-09-最大子数组和(初探动态规划)题目一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。示例1:输入:nums=[-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组[4,-1,2,1]的和最大,......
  • 2024年C语言最新经典面试题汇总(1-10)
    C语言文章更新目录C语言学习资源汇总,史上最全面总结,没有之一C/C++学习资源(百度云盘链接)计算机二级资料(过级专用)C语言学习路线(从入门到实战)编写C语言程序的7个步骤和编程机制C语言基础-第一个C程序C语言基础-简单程序分析VS2019编写简单的C程序示例简单示例,VS2019调......
  • 模拟堆(详解+例题)
    一、定义维护一个数据集合,堆是一个完全二叉树。那么什么是二叉树呢?如图:二、关于小根堆实现性质:每个根节点都小于等于左右两边,所以树根为最小值。 2.1、堆存储(用一维数组来存) 记住规则:x(根)的左儿子=x*2;          x(根)的右儿子=x......
  • 【面试】高并发中的集合
    本文旨在总结多线程情况下集合的使用Java中的集合大致以下三个时期:第一代线程安全集合类以Vector、HashTable为代表的初代集合,使用synchronized在修饰方法,从而保证线程安全。缺点:效率低。代码示例Vectoradd方法源码/***Appendsthespecifiedelementtotheendoft......
  • 数据库面试高频题目 - 深度解析 MySQL:探秘关系型数据库的核心技术(一)
       本文将深入探讨MySQL,这是关系型数据库中的核心技术,被广泛应用于数据存储和管理。透过高频面试题解析,我们将深入研究MySQL在数据建模、查询优化和事务处理中的作用。无论你是初学者还是渴望加深对关系型数据库技术的了解,本文都将为你提供实用的面试准备。一、innod......
  • SpringBoot 面向面试学习(2023.03.23更新)
    导语在网上找了很多SpringBoot相关的教程,要么是针对初学者面向实战入门的视频,要么基于面试但存在收费或不全面的问题……因此参考网上博客特此总结了一些可能常见的面试题,循序渐进,以问题为导向,以面试为场景进行学习/复习。JavaGuide提供的Spring常见面试题总结可以去看,里面......
  • Java面向对象编程面试题
    序号问题详细答案1什么是类与对象?类和对象实例之间的关系?   类具有继承、数据隐藏和多态三种主要特性。类是同一类对象实例的共性的抽象,对象是类的实例化;类是静态的,对象是动态的,对象可以看作是运行中的类。类负责产生对象,可以将类当成生产对象的工厂2构造函数的特点有哪些(1......
  • Java回溯知识点(含面试大厂题和源码)
    回溯算法是一种通过遍历所有可能的候选解来寻找所有解的算法,如果候选解被确认不是一个解(或至少不是最后一个解),回溯算法会通过在上一步进行一些变化来丢弃这个解,即“回溯”并尝试另一个候选解。回溯法通常用递归方法来实现,在解决排列、组合、选择问题时非常有效。回溯算法的......