精华内容
下载资源
问答
  • 开发环境:python3/mac os x 使用模块:“sqlite3”,“getopt”,“sys” ...今天主要以火狐浏览器为例,利用python自动获取存储本地sqlite数据库中的浏览器“历史浏览记录”,“cookie”信息和“历史提...

    开发环境:python3/mac os x

    使用模块:“sqlite3”,“getopt”,“sys”

     

    前言:有些应用程序需要在客户端中存储数据,绝大部分使用的都是sqlite数据库,使用sqlite把整个数据裤都存放在客户端本地一个单一不分层的文件中。今天主要以火狐浏览器为例,利用python自动获取存储在本地sqlite数据库中的浏览器“历史浏览记录”,“cookie”信息和“历史提交参数”。

     

    数据库存储路径:

    Windows:C:\Documents and Settings\<USER>\

    Application Data\Mozilla\Firefox\Profiles\<profile>\

     

    Mac OS X: /Users/<USER>/Library/Application

    Support/Firefox/Profiles/<profile>

     

    1,查看浏览器本地sqlite数据库

    我们可以在文件中看到存储了这些数据库,我们可以利用navicat来连接上sqlite数据库,看看具体存储了哪些信息

    这里大家可以自己每个sqlite文件都导入nacicat看一下,在这里就不做过多演示。

     

    2,利用python自动化筛选数据

    导入fromhistory.sqlit数据库文件,里面有两个表,其中“moz_fromhistory”表中存储了用户历史向web所提交的参数(其中可能包括了攻击参数)。

    我们可以从数据库中挖掘有关的危险参数,可查到用户的攻击手段。(目前有些反取证手段,会利用ie内核自己编写反取证浏览器达到本地计算机不留痕迹的效果)

     

    python实现:

    向historydb传入一个路径参数,使用sqlie3模块连接到本地数据库,执行sql语句查询,最后将获取到的数据遍历打印出来。

     

    3,举一反三

    同样原理实现我们另外两个功能

     

    4,让他脚本看起像个工具

    写一个main函数做程序入口,使用sys和getopt模块获取终端指令,可以根据命令实现指定的函数功能。

     

    5.测试

    路径中存在空格,空格前需要加上“\”,否则只能获取到空格前面的路径,后面的会获取不到。

    执行后,会获取到浏览器存储在本地sqlite数据中的cookie信息

    展开全文
  • 文章首发个人博客:聊一聊浏览器本地存储 | 代码视界 前言 作为一名前端工程师,我们每天都在跟浏览器打交道,浏览器的本地存储更是经常用到。今天我们就一起来聊一聊浏览器的本地存储。 浏览器的本地存储主要分为...

    作者:Hanpeng_Chen

    公众号:前端极客技术

    文章首发个人博客:聊一聊浏览器本地存储 | 代码视界

    前言

    作为一名前端工程师,我们每天都在跟浏览器打交道,浏览器的本地存储更是经常用到。今天我们就一起来聊一聊浏览器的本地存储。

    浏览器的本地存储主要分为:CookieWebStorageIndexedDB。其中WebStorage又可以分为localStoragesessionStorage

    Cookie

    HTTP Cookie,通常叫做Cookie,一开始是在客户端用于存储会话信息的。

    Cookie主要构成

    • name:名称,一个唯一确定的cookie的名称,cookie的名称必须经过URL编码。
    • value:值,存储在cookie中的字符串值。值必须被URL编码。
    • Domain:域,指明cookie对哪个域有效,所有向该域发送的请求都会包含这个信息。
    • path:路径,对于指定域中的那个路径,应该向服务器发送cookie。
    • Expires/Max-Age:有效期,表示cookie的有效期。
    • HttpOnly:如果这个这个值设置为true,就不能通过JS脚本获取cookie的值。通过这个值可以有效防止XSS攻击。
    • Secure:安全标志,指定后,cookie只有在使用SSL连接的时候才能发送到服务器。

    Cookie的原理

    第一次访问网站时,浏览器发出请求,服务器响应请求后,会在响应头中添加一个Set-Cookie,将cookie放入响应请求中。

    在第二次发起请求时,浏览器通过Cookie请求头部将cookie信息送给服务器,服务端根据cookie信息辨别用户身份。

    Cookie的过期时间、域、路径、有效期、适用站点都可以根据需要来指定。

    Cookie的生成

    Cookie的生成方式主要有两种:

    • 服务端设置Cookie
    • 客户端设置Cookie

    服务端设置方式参考上面Cookie的原理,具体的实现方式自行查阅相关资料。客户端设置Cookie方法如下:

    document.cookie = "name=zhangsan; age=20";
    

    Cookie的缺点

    • 每个特定域名下的cookie数量有限,不同浏览器数量限制不同。如果超过数量限制后再设置Cookie,浏览器就会清除以前设置的Cookie。
    • 大小只有4kb。
    • 每次HTTP请求都会默认带上Cookie,影响获取资源的效率。
    • Cookie的获取、设置、删除方法需要我们自己去封装。

    Web Storage

    Web Storage分为localStorage和sessionStorage。

    localStorage

    localStorage以键值对的方式存储,永久存储,永不失效,除非手动删除。

    localStorage有以下几个特点:

    • 保持的数据永久有效,除非手动删除;
    • 大小为5M
    • 仅在客户端使用,不和服务端进行通信
    • 接口封装较好

    使用方法:

    // 设置
    localStorage.setItem('name', '张三')
    localStorage.age = '25'
    // 取值
    localStorage.getItem('name')
    let age = localStorage.age
    // 移除
    localStorage.removeItem('name')
    // 移除所有
    localStorage.clear()
    

    sessionStorage

    sessionStorage对象存储特定于某个会话的数据,当这个会话的页签或浏览器关闭,sessionStorage也就消失了。

    页面刷新之后,存储在sessionStorage中的数据仍然存在可用。

    sessionStorage的特点:

    • 会话级别的浏览器存储
    • 大小为5M
    • 仅在客户端使用,不和服务端通信
    • 接口封装较好

    使用方法:

    // 设置
    sessionStorage.setItem('name', '张三')
    sessionStorage.age = '25'
    // 取值
    sessionStorage.getItem('name')
    let age = sessionStorage.age
    // 移除
    sessionStorage.removeItem('name')
    // 移除所有
    sessionStorage.clear()
    

    sessionStorage和localStorage的区别:localStorage的数据可以长期保留,sessionStorage的数据在关闭页面后即被清空。

    IndexedDB

    IndexedDB,全称Indexed Database API,是浏览器中保持结构化数据的一种数据库。

    IndexedDB的思想是创建一套API,方便保存和读取JavaScript对象,同时支持查询和搜索。

    IndexedDB特点

    • 键值对存储:IndexedDB采用对象仓库存储数据,可以存储所有类型的数据。仓库中数据以键值对的形式保持。
    • 异步:IndexedDB操作时不会锁死浏览器,用户依然可以进行其他操作。
    • 支持事务:有学过数据库的对事务肯定不陌生。事务意味着在一系列操作中,只要有一步失败,整个事务就都取消,数据库回滚到事务执行之前,不存在只改写一部分数据的情况。
    • 同源限制:IndexedDB受到同源限制,每一个数据库对应创建它的域名。网页只能访问自身域名下的数据库,而不能访问跨域的数据库。
    • 储存空间大: IndexedDB 的储存空间比 localStorage大得多,一般来说不少于 250MB,甚至没有上限。
    • 支持二进制储存: IndexedDB不仅可以储存字符串,还可以储存二进制数据(ArrayBuffer 对象和 Blob 对象)。

    IndexedDB的入门教程,可以查看阮一峰老师的文章:浏览器数据库 IndexedDB 入门教程

    总结

    • Cookie主要用于“维持状态”,而非本地存储数据
    • Web Storage是专门为浏览器提供的数据存储机制,不与服务端发生通信
    • IndexedDB 用于客户端存储大量结构化数据

    如果你觉得这篇内容对你有帮助的话:

    1、点赞支持下吧,让更多的人也能看到这篇内容

    2、关注公众号:前端极客技术,我们一起学习一起进步。

    展开全文
  • 浏览器本地存储操作

    2021-02-23 18:28:10
    localStorage PC浏览器本地永久保存,除清空外) sessionStorage PC浏览器(关闭窗口就清空数据) 浏览器存储操作 localStorage 永久存储 localStorage.setItem(key,value) 保存数据 localStorage.getItem(key) ...
    localStorage PC浏览器(本地永久保存,除清空外)
    sessionStorage PC浏览器(关闭窗口就清空数据)
    浏览器存储操作
    localStorage 永久存储
    localStorage.setItem(key,value) 保存数据
    localStorage.getItem(key)   获取数据
    localStorage.removeItem(key)   删除数据
    localStorage.clear();   删除全部数据
     sessionStorage临时存储
    sessionStorage.setItem(key,value) 保存数据
    sessionStorage.getItem(key)   获取数据
    sessionStorage.removeItem(key)   删除数据
    sessionStorage.clear();   删除全部数据
    
    展开全文
  • 关于浏览器本地存储

    2019-11-27 11:11:03
    通过浏览器对数据进行本地存储 二、cookies 浏览器查看:f12——Application——storage——cookies 1、特点 只能通过服务器访问 存储数量20条左右 存储事件默认为session时间,session会话控制(浏览器开启关闭...

    一、含义

    通过浏览器对数据进行本地存储

    二、cookies

    浏览器查看:f12——Application——storage——cookies
    1、特点

    • 只能通过服务器访问
    • 存储数量20条左右
    • 存储事件默认为session时间,session会话控制(浏览器开启关闭时间)

    2、设置cookie

    document.cookie=“name=value”;存字符串

    3、获取cookie

    document.cookie:得到所有的存储信息,以;隔开,通过字符拆分成数组split()

    4、修改已经存储的数据

    重新覆盖
    document.cookie=“name=111”;
    document.cookie=“name=aaa”;

    5、修改存储时间

    document.cookie=“name=value,expires=时间”;
    例如设置一年:
    var data=new Date();
    data.setFullYear=(data.getFullYear()+1);
    如何删除时间只能让存储时间过期

    ps:只能获取同一个文件的存储信息
    封装调用cookie

    Local Storage

    1、设置

    window.localStorage.setItem(key,value)
    window.localStorage.setItem(‘user’,‘pI’)

    2、适用范围,同一个IP都可以查看,本地和服务器访问都可以

    3、存储数量大约5M

    4、如何获取

    window.localStorage.getItem('user):得到value

    5、存储时间:一旦存储,永远存在

    6、删除存储

    window.localStorage.removeItem(‘user’)

    7、清空

    window.localStorage.clear()

    8、将对象换成字符串

    JSON.stringify(参数)
    参数:需要转换的字符串,字符串变对象

    9、将字符串换成对象

    JSON.parse(参数)
    参数:需要转换的对象,字符串变字符串

    三、sessionStorage:只能存session时间,其他与localStorage使用

    展开全文
  • 浏览器本地存储对象

    2020-01-16 16:04:56
    本地存储对象 网页在浏览器中执行时,自动给我们提供大小为5M的空间,可以存储字符串等(像数据库一样存储数据) 提供了sessionStorage(会话存储)和localStorage(本地存储)两个存储对象来对网页的数据进行添加删除修改...
  • indexedDB 浏览器本地存储

    千次阅读 2018-07-26 00:28:27
    先搞清楚它是什么,这对你的理解很重要,从DB就可以看出,它肯定是一个数据库,而说到数据库,有两种不同类型的数据库,就是关系型数据库和非关系型数据库,关系型数据库如Mysql、Oracle等将数据存储在表中,而非...
  • 浏览器本地存储策略

    2018-04-24 14:01:22
    有了本地数据,就可以避免数据在浏览器和服务器间不必要地来回传递。sessionStorage、localStorage、cookie都是在浏览器存储的数据,其中sessionStorage的概念很特别,引入了一个“浏览器窗口”的概念。session...
  • 浏览器本地存储与服务器端存储之间的区别 其实数据既可以在浏览器本地存储,也可以在服务器端存储。 浏览器端可以保存一些数据,需要的时候直接从本地获取,sessionStorage、localStorage和cookie都由浏览器存储在...
  • 浏览器本地存储,我们的数据如果想每次打开浏览器都可以访问到的话,我们就必须使用本地存储这个功能  localStorage 对象,便可以帮我们实现这个功能  localStorage.setItem("car",JSON.stringify(state.car...
  • js浏览器本地存储

    千次阅读 2014-05-13 08:50:48
    store.js - 轻松实现本地存储(LocalStorage)
  • 前言:cookie,localStorage和sessionStorage都是浏览器本地存储数据的地方,其用法不尽相同;总结一下基本的用法。 一、cookie 定义: 存储在本地,容量最大4k,在同源的http请求时携带传递,损耗带宽; 可设置访问...
  • 一般不会用到这个浏览器本地存储,项目中的数据一般都会存在后台的数据库中,需要时,则由前台进行请求获取。不过有些情况下不得不使用这个 localStorage 来做保存操作。比如绘制的图像数据,请求后台返回数据进行...
  • 数据既可以在浏览器本地存储,也可以在服务器端存储。 浏览器端可以保存一些数据,需要的时候直接从本地获取,sessionStorage、localStorage和cookie都由浏览器存储在本地的数据。服务器端也可以保存所有用户的所有...
  • 浏览器本地存储方式

    2010-12-07 11:59:34
    浏览器存储方式主要方法: [color=blue]* Cookie 4096字节;缺点:存储量小,请求头附带cookie带来性能问题。 * Flash Share Object 默认支持100k,跨浏览器存储最好的方式,毕竟现在没有安装flash插件的...
  • 基本思路:不断的给字符串增加字符,调用 localStorage.setItem 进行存储,直至其无法存储为止(exceeded the quota:超出限额)。...不同的浏览器类型和版本,其对应的 localStorage 存储量可能不一致
  • //浏览器本地存储: 顾名思义,就是把一些数据存储在浏览器上 //(数据一般用于验证登录状态, 用户信息, 常用的数据)//生命周期:从出生到死亡, (从存储到失效)//浏览器本地存储方式: cookie localStroage ...
  • HTML5浏览器本地存储

    2016-08-16 15:47:52
    HTML5的本地存储有两种:localStorage和sessionStorage。localStorage:不限制存储时间,如果不删除或者在浏览器中清除数据则会一直存在。 sessionStorage:在页面创建的时候生成,页面关闭时销毁,不用主动删除。 ...
  • 浏览器本地存储

    2021-03-26 10:25:04
    浏览器本地存储 随着互联网的快速发展,基于网页的应用越来越普遍,同时也变的越来越复杂,为了满足各种各样的需求,浏览器会经常性的在本地存储大量的数据,因此HTML5规范提出了相关解决方案。 本地存储特性 数据...
  • 其实借助了浏览器本地存储到了你的硬盘上 修改了这上面的值页面上的也发生了变化,就是往你本地缓存点东西 自己代码实现 前提这边的key和value一定要为字符串.如果不是字符串也会自动帮你转化成字符串 ...
  • 前端面试题----关于浏览器本地存储和cookie的利弊
  • 前言:cookie,localStorage和sessionStorage都是浏览器本地存储数据的地方,其用法不尽相同;总结一下基本的用法。一、cookie定义:存储在本地,容量最大4k,在同源的http请求时携带传递,损耗带宽;可设置访问路径...
  • 浏览器本地存储-Store.js

    千次阅读 2016-04-06 10:03:26
    store.js是一个跨浏览器的数据本地存储 JS 框架,可以在不依赖 cookie 和 Flash 的情况下把数据保存在客户端。store.js最大的优点就是很好地解决了一些老版本浏览器不支持html5 LocalStorage API的问题,store.js 会...
  • cookie是浏览器提供的一种机制,可以由JavaScript对其进行操作(设置、读取、删除),是一种会话跟踪技术,是存储于访问者计算机中的一小块数据 会话:用户进入网站,开始浏览信息到关闭浏览器的过程,就称之为是一次...
  • 下面介绍使用cookie存储本地生成的uuid识别码 Vue中使用cookie 1、安装依赖 $ npm i vue-cookie -D 2、入口文件挂载cookie import cookie from 'vue-cookie' Vue.prototype.$cookie = cookie; 3、UUID生成公用方法...
  • cookie,localStorage和sessionStorage都是浏览器本地存储数据的地方,其用法不尽相同;总结一下基本的用法。 一、cookie 定义: 存储在本地,容量最大4k,在同源的http请求时携带传递,损耗带宽; 可设置访问...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 148,516
精华内容 59,406
关键字:

获取浏览器本地存储