欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > 安全面试5

安全面试5

2025/2/25 6:46:51 来源:https://blog.csdn.net/ubaichu/article/details/145841438  浏览:    关键词:安全面试5

文章目录

  • sql的二次注入
  • 在linux下,现在有一个拥有大量ip地址的txt文本文档,但是里面有很多重复的,如何快速去重?
  • 在内网渗透中,通过钓鱼邮件获取到主机权限,但是发现内网拦截了tcp的出网流量,聊一下这个时候应该怎么进行通信?
  • 二次注入要怎么修复
  • 文件下载漏洞有没有什么比较好的利用方式
    • 下载敏感配置文件
      • Linux:
      • Windows:
    • 下载Web应用程序源代码
    • 下载日志文件
  • 命令执行漏洞,http不出网有什么比较好的处理方法
  • 怎么判断一个数据库是mysql还是oracle的?

sql的二次注入

SQL 二次注入是指攻击者通过输入恶意数据,将恶意 SQL 语句存储到数据库中。当应用程序在后续操作中从数据库读取这些数据并直接拼接到 SQL 查询中时,恶意代码就会被执行,从而导致攻击成功

在linux下,现在有一个拥有大量ip地址的txt文本文档,但是里面有很多重复的,如何快速去重?

  1. sort 排序并去重:sort -u ip_addresses.txt > unique_ips.txt
  2. uniq 去重:sort ip_addresses.txt | uniq > unique_ips.txt
  3. 使用 awk 去重:awk ‘!seen[$0]++’ ip_addresses.txt > unique_ips.txt

在内网渗透中,通过钓鱼邮件获取到主机权限,但是发现内网拦截了tcp的出网流量,聊一下这个时候应该怎么进行通信?

  1. 使用DNS隧道
  2. 使用ICMP隧道
  3. 使用HTTP/HTTPS隧道
  4. 使用邮件协议
  5. 使用SMB协议
  6. 使用WebSocket
  7. 使用隐蔽通道
  8. 使用UDP协议

二次注入要怎么修复

  1. 使用参数化查询
  2. 对从数据库读取的数据进行验证
  3. 对从数据库读取的数据进行转义
  4. 使用ORM(对象关系映射)框架

文件下载漏洞有没有什么比较好的利用方式

下载敏感配置文件

Linux:

  1. /etc/passwd:用户账户信息。
  2. /etc/shadow:用户密码哈希。
  3. /etc/my.cnf:MySQL配置文件。
  4. /root/.ssh/authorized_keys:SSH公钥文件。
  5. /root/.bash_history:用户命令历史记录

Windows:

  1. C:\Windows\System32\inetsrv\MetaBase.xml:IIS配置文件。
  2. C:\Windows\php.ini:PHP配置文件。
  3. C:\Program Files\mysql\my.ini:MySQL配置文件

下载Web应用程序源代码

  1. PHP:下载index.php、config.php等文件,审计SQL注入、文件上传等漏洞110。
  2. Java:下载WEB-INF/classes/applicationContext.xml和WEB-INF/classes/xxx/xxx/ccc.class,反编译后审计代码。
  3. ASP.NET:下载web.config,获取数据库连接字符串和其他配置信息

下载日志文件

  1. Web服务器日志:如Apache的access.log、IIS的日志文件。
  2. 应用程序日志:如Tomcat的catalina.out、Spring Boot的日志文件

命令执行漏洞,http不出网有什么比较好的处理方法

  1. 利用内存马注入:在不出网场景下,攻击者可将恶意代码注入服务器内存,避免文件落地。例如,通过SnakeYaml反序列化漏洞加载本地JAR包生成冰蝎内存马,直接与攻击者建立加密通信通道
  2. 本地文件写入与结果提取:路径探测:通过系统命令(如dir /s/a-d/b web.xml或find / -name “*.jsp”)查找Web应用可写目录,写入WebShell。需注意特殊字符转义,可采用Base64编码后解码写入
  3. 数据库外连:若目标服务器可连接外部数据库,可将命令结果写入数据库字段,再通过查询导出数据。
  4. 邮件服务:通过mail或sendmail命令将结果发送至攻击者邮箱,需目标服务器启用邮件服务

怎么判断一个数据库是mysql还是oracle的?

  1. 错误页面特征:mysql:错误信息通常包含MySQL字样Oracle:错误信息通常包含ORA-前缀。
  2. 通过SQL语法差异判断:MySQL:查询information_schema.tables。Oracle:查询all_tables。
  3. 默认端口:MySQL:默认端口是3306。Oracle:默认端口是1521。
  4. 使用Nmap扫描:nmap -sV -p 3306,1521 <target_ip>
  5. 时间函数:MySQL:使用NOW()或SYSDATE()。Oracle:使用SYSDATE。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com