1

独立桌面应用程序可以在Chrome/Firefox/IE中访问浏览历史吗?我可以从桌面应用程序访问Chrome网络历史记录吗?

或者是不可能的?

+0

是的,这是可能的。 Chrome/Firefox将其历史存储在SQLite数据库中,IE将历史信息存储在一个特殊的文件夹中。有关这些位置的高级信息,请参阅http://www.irongeek.com/i.php?page=security/windows-forensics-registry-and-file-system-spots – 2012-07-26 10:00:24

回答

1

你的确可以。

Chrome和Firefox在sql-lite文件中存储浏览器历史记录。

铬历史文件的位置是:

Linux: /home/$USER/.config/google-chrome/ 
Linux: /home/$USER/.config/chromium/ 
Windows Vista (and Win 7): C:\Users\[USERNAME]\AppData\Local\Google\Chrome\ 
Windows XP: C:\Documents and Settings\[USERNAME]\Local Settings\Application Data\Google\Chrome\ 

如果你的开发相关的应用程式。我过去使用过Java。你必须阅读SQLlite数据库的结构,但是你可以使用SQL查询来访问这些表(它实际上很适合用groovy)。它适用于Firefox的方式完全相同。

我对IE历史没有经验。

1

当我尝试搜索某些我无法从历史记录选项卡中找到的东西时,我已经在Chrome浏览器历史中探索过几次。这里有一个教程:Google Chrome Forensics。一些注意事项:

  • 的sqlite3的数据库被“锁定”在Chrome上运行,所以你可能必须要么关闭浏览器或阅读他们之前的数据库复制到一个单独的文件。
  • 在历史记录数据库中,visit_time是自1601-01-01(Windows文件时间的1/10)以来的μs,即使在Mac或Linux上也是如此,因此将其转换为Unix时间(从1970-01- 01)你必须缩放并减去11644473600 = new Date(1970, 0, 1)/1000 - new Date(1601, 0, 1)/1000
  • 例如,找到最后一个10位的网址,我访问了:select urls.url, datetime(visit_time/1000000 - 11644473600, 'unixepoch', 'localtime') from visits left join urls on visits.url = urls.id order by visit_time desc limit 10;
  • visits.transition&255page_transition_types.h找到一个枚举。请参阅extension documentation on history中的说明。
+0

100 ns间隔;不是μs间隔(数量级关闭) – 2012-07-27 02:04:03

+0

@BillyONeal,你说的正确的是,Windows文件时间以100ns计算,但是该查询起作用,所以Chrome访问时间是Windows时间的1/10。将更新。 – yonran 2012-07-27 12:24:42

+0

@BillyONeal,我只是想知道他们为什么选择Windows纪元,并根据[这个cookie过期错误](http://code.google.com/p/chromium/issues/detail?id=14734),它是这样的在零初始化时间和任何实时之间总是有区别的,因为在Chrome首次发布的Windows中这是真实的。 Chrome的tick一直是μs。 – yonran 2012-07-27 13:00:50

相关问题