第05天:基础入门-系统及数据库等

概述:
在这里插入图片描述

一、操作系统层面:

1、识别操作系统常见方法

  • 有网站
    可以通过网站识别通过网站的手工识别方法判断:
    windows对大小写不敏感也就是说你在网页中可以替换网站路径的大小写进行测试
  • 看字母大小写,windows对大小写不敏感,Linux敏感
  • 看ping值 linux --ttl在64左右 ,windows --ttl在128左右
    不同的操作系统的默认TTL值是不同的, 所以我们可以通过TTL值来判断主机的操作系统,但是当用户修改了TTL值的时候,就会误导我们的判断,所以这种判断方式也不一定准确。
    下面是默认操作系统的TTL:
    1、windows NT/2000 TTL:128
    2、windows 95/98 TTL:32
    3、unix TTL:255
    4、linux TTL:64
    5、win TTL:64
  • 没有网站
    通过nmap进行扫描方法:
    nmap -O IP地址
    在这里插入图片描述

2、简要两者区别及识别意义情况

  • 可以帮助我们明确思路
  • 可以筛选掉不符合系统的情况

3、 操作系统层面漏洞类型对应意义

  • 覆盖面广
  • 获取的权限高
  • 危害性大

二、数据库层面

1、识别数据库类型常见方法

nmap -O ip
nmap ip -p 端口,通过端口开放反推数据库

2、数据库类型区别及识别意义

  • 数据库的漏洞和类型相性很强
  • 不同数据库漏洞爆发点不太一样
  • 能确定数据库类型、版本,会对渗透有很大帮助

3、数据库常见漏洞类型及攻击

弱口令
sql注入

4、常见的数据库结构

ASP+Access
php+mysql
axpx+mssql
jsp+mssql,oracle
python+mongodb

5、服务器端口

关系型数据库

MySQL:3306
SqlServer:1433
Oracle:1521

NOSQL数据库

MongoDB:27017
Redis:6379
memcached:11211

6、第三方

1.如何判断那些有第三方平台或软件 – 端口扫描 – 特征匹配

  • 通过网站扫描进行探查
    7kb(御剑)
  • 通过端口或者协议的开启进行判定(主要)
    例如通过namp进行探查
    nmap -O -sV IP地址

2.简要为什么要识别第三方平台或软件

可以提供额外的攻击面

3.常见第三方平台或软件漏洞类型及攻击

弱口令
软件的漏洞攻击

4.简要第三方平台或软件安全测试的范围

直接获取到软件的权限便于进一步的提权和攻击

注:除去常规WEB安全及APP安全测试外,类似服务器单一或复杂的其他服务( 邮件,游戏,负载均衡等),也可以作为安全测试目标,此类目标测试原则只是少了WEB应用或其他安全问题。所以明确安全测试思路是很重要的!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Java中进行MySQL多表操作需要使用JDBC(Java Database Connectivity)技术,具体步骤如下: 1. 加载MySQL驱动程序 在Java中连接MySQL数据库需要加载MySQL驱动程序,可以使用Class.forName()方法加载。 ``` Class.forName("com.mysql.jdbc.Driver"); ``` 2. 建立数据库连接 使用DriverManager.getConnection()方法建立数据库连接,需要传入数据库URL、用户名和密码。 ``` String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "123456"; Connection conn = DriverManager.getConnection(url, user, password); ``` 3. 创建Statement对象 使用Connection.createStatement()方法创建Statement对象,用于执行SQL语句。 ``` Statement stmt = conn.createStatement(); ``` 4. 执行SQL语句 使用Statement.executeUpdate()方法执行SQL语句,可以执行增、删、改操作。 ``` String sql = "insert into user(name, age) values('Tom', 20)"; stmt.executeUpdate(sql); ``` 使用Statement.executeQuery()方法执行SQL查询语句,返回ResultSet对象,可以遍历结果集获取查询结果。 ``` String sql = "select * from user"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()) { String name = rs.getString("name"); int age = rs.getInt("age"); System.out.println(name + " " + age); } ``` 5. 关闭连接 使用Connection.close()方法关闭连接。 ``` conn.close(); ``` 以上是Java进行MySQL多表操作的基本步骤,具体操作需要根据业务需求来设计SQL语句。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值