一个抓包的需求,请问可以实现吗?

2018-03-21 11:39:30 +08:00
 zcdll

是这样的,在一台内网计算机上装有一个 内部的信息管理系统,一个 客户端软件,登录后可以查看信息。

需求是:比如我查询某天的交易记录,输入日期后,返回数据。我想 截取这些记录数据,在另外一个系统内显示。

或者只截取这个 日期 也行?我按照 BS 的理解,就是这个查询的参数,一个 http 请求 里面 & 后面的部分。

我不知道这个需求是否可以完成。。。

我对 CS 架构 的设计不熟悉,以前只写过网络爬虫,可以直接从 Chrome 的开发者工具看到请求,然后分析等。

我用 wireshark 能看到有很多 tcptns 请求,查了下,tns 是 oracle 的协议,怀疑是点击查询按钮后直接查的数据库? wireshark 里面一堆数据看不太懂。。。

有哪位大兄弟了解着一块?麻烦说一下,这个属于什么方向,什么领域?我该以什么 关键字 来搜索等等

谢谢!

2144 次点击
所在节点    问与答
10 条回复
hxndg
2018-03-21 13:13:18 +08:00
tcp 不能说明什么,如果是自有协议没法解析。
zcdll
2018-03-21 14:09:44 +08:00
@hxndg 嗯嗯,那请问正确的流程应该是什么?我应该怎么找到这些数据包?

今天问了下这边的负责人,他告诉了一个数据库地址,跟 tns 显示的一样,通过这个可以确定什么吗?
shoaly
2018-03-21 14:13:17 +08:00
我感觉是直接查询的数据库... 也许你不用抓包了, 直接问道数据库地址和账号, 自己写客户端就完事了
zcdll
2018-03-21 14:29:22 +08:00
@shoaly 嗯嗯,但是我不知道查询的条件呀。这边的用户想着他在 A 系统里查询之后,能通过某种方法自动抓到他查询的条件和 A 系统 返回的结果,自动传送给 B 系统 分析,再显示相应的结果。。。
hcymk2
2018-03-21 15:02:25 +08:00
你看下客户端是用什么语言写的。
zcdll
2018-03-21 15:09:57 +08:00
@hcymk2 额。。。很老了,我在客户这边现场,用的是 Windows XP 的系统,估计是 C++ ?这个软件至少 10 年了
hcymk2
2018-03-21 15:36:24 +08:00
你先用 wireshark 抓下包,wireshark 里面是可以看到明文的 sql 和查询结果的.
zcdll
2018-03-21 16:04:39 +08:00
@hcymk2 意思是连接 Oracle 的话,这些查询结果不会加密?我在 wireshark 里面过滤 tcp 请求就可以吗?还是有什么更准确一些的过滤条件?

谢谢!
huxiaohaiyang
2018-03-22 01:30:25 +08:00
抓包应该解决不了这个问题

桌面程序一般用的封装数据访问协议例如 odbc、ado,不会发送 http 请求,可能有些会用第三方的 service 服务,一般加了 auth 你也拿不到参数

理想方案 :有源代码,分析下代码(控件绑定的操作),然后重新编译,写个服务监控一下

换个思路:找下客户端是否有日志记录,分析日志试试
或监控下搜索框不是很准确
zcdll
2018-03-22 12:01:17 +08:00
@huxiaohaiyang 谢谢!

这么说很清晰!昨天查资料的结果,大概是这个样子,大学的时候写过很简单的 C# 的程序,用的 ODBC 啥的。

昨天页找了下,没有日志记录,只有崩溃记录。。。

不过我在 wireshark 中确实看到了 sql 记录,select xxx 啥的,是个 request。再看相邻的 response,就看不懂了,很多乱的字符。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/440008

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX