关于Exceptionless日志收集框架会被Fiddler抓包,从而获取到ApiKey的问题
关于Exceptionless日志收集框架会被Fiddler抓包,从而获取到ApiKey的问题
环境:Exceptionless5.0.0、Linux、WPF客户端、Fiddler
问题:在使用Exceptionless 对 WPF客户端进行日志记录的时候。客户端在日志传送的过程中会被Fiddler抓包 并且获取到Exceptionless的ApiKey。
首先上几张图来更明显的描述问题。
第一张图是我WPF客户端采用的日志上传方式,即使用他封装好的方式CreateLog。

第二张图是我WPF客户端日志上传的过程中,开启了Fiddler。从图中很明显的看到这条上传信息被Fiddler抓取到了。

第三张图很明显的显示出了Fiddler抓取到的信息里包含有了我WPF客户端项目的Apikey。

第四张图是我通过Fiddler拿到的ApiKey,通过使用Postman进行模拟日志的上传。

第五张图很明显看到了我使用Postman上传的日志被传送到了Exceptionless服务器里面了。

首先通过这大家已经可以很明确的看出自己搭建的Exceptionless是存在一定的漏洞的。那么如何去解决他呢?
解决思路:我在这里提供目前而言两个解决思路(当然两个思路都是不采用他封装好的方法去提交,本人试过封装好的方法里没办法处理这个。Exceptionless的作者也是这样说的,Exceptionless作者说后面可能会考虑在用户界面删除ApiKey防止这个现象)。
(1)让后端开发一个日志接口,通过接口对Exceptionless服务器进行日志上传,然后接口对发送者进行身份的甄别验证。
(2)采用Https的方式进行上传,这就得借鉴我上一篇的内容 《WPF桌面程序在请求接口时如何防止被常用的抓包软件Fiddler抓包》。
当然这两种方案都是比较麻烦就是得自己去手动获取并赋值数据。Exceptionless日志里每条日志都有一些环境数据,例如计算机名、处理器核数、总内存、可用内存、已用内存等等。当然大家可能觉得这些数据比较无关紧要,但值得一说的是,有时候客户电脑的环 境会影响到你的程序运行的结果,所以这些数据能拿的尽量就去做出来。
最后补充下:当我遇到这个问题的时候曾经有人说我这是闲的没事做、没必要纠结这个问题被抓到Apikey就被抓到、没必要较真、没有完美的程序。在这我只想说程序是没有完美的,或许我们开发出来一个程序后,我们发现了程序存在一定问题,我们忽略了。然后 测试肯定对于一些细节是不一定能测试到或想得比较全面的,当这个程序推行到市场的时候。这个问题被发现了该怎么办?这个问题谁来负责?损失谁来承担?就拿我本文章这个问题来说:首先我拿到你日志上传的ApiKey,那是不是意味着我可能整个小工具疯狂的 往你Exceptionless服务器上传一些垃圾数据?而且对于Exceptionless的日志据我上次看到的一条日志应该在1kb~2kb。在我对你服务器进行疯狂输送垃圾数据的过程中,你或许会说我修改下Apikey就行了,但你有没有想过那那些已经开始使用的客户怎么办,是不是 意味着日志就不能收集到?而且这个问题不解决,下个版本我依旧可以拿到你的ApiKey,是不是这个道理。话就说到这,希望对后面的人有帮助。
转载请标明原文链接
关于Exceptionless日志收集框架会被Fiddler抓包,从而获取到ApiKey的问题的更多相关文章
- .NET Exceptionless 日志收集框架本地环境搭建
一.简介 Exceptionless 是一个开源的实时的日志收集框架,它可以应用在基于 ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF,Console,MVC 等 ...
- 关于Exceptionless日志收集框架如何关闭磁盘缓存
问题:在使用Exceptionless的时候,Exception在收集到日志时会默认在appdata里面缓存当条日志的缓存文件,时间久了之后,如果收集到的日志越多磁盘的空间就会不足. 我使用的环境是 ...
- 在IIS上搭建Exceptionless日志收集框架
系统环境要求 .NET 4.6.1,如果已安装过VS请忽略.Java Sdk1.8+,Win10环境下配置Java 环境变量参考,ElasticSearch 5.1,它是一个基于Lunce搜索服务器. ...
- ExceptionLess异常日志收集框架-1
哈哈,中秋和代码更配哦,不知不觉一年过半了,祝园友们中秋快乐 前一阵子在博客园看到了一篇博文 http://www.cnblogs.com/savorboard/p/exceptionless.htm ...
- 日志收集框架 Exceptionless
日志收集框架 Exceptionless 前言 从去年就答应过Eric(Exceptionless的作者之一),在中国会帮助给 Exceptionless 做推广,但是由于各种原因一直没有做这件事情, ...
- 在.NET Core中使用Exceptionless分布式日志收集框架
一.Exceptionless简介 Exceptionless 是一个开源的实时的日志收集框架,它可以应用在基于 ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF, ...
- asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程
最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...
- Net Core免费开源分布式异常日志收集框架Exceptionless
asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 https://www.cnblogs.com/yilezhu/p/9193723.htm ...
随机推荐
- jenkins集群(三) -- master和slave配置git
一.Linux(master)上安装git 1.运行命令:yum -y install git 2.git的默认安装目录是: 二.给Linux下Git配置好秘钥(公钥 + 私钥) 1.添加用户和密码 ...
- raw目录的位置是D:\android_projects\qrscan\app\src\main\res\raw
D:\android_projects\qrscan\app\src\main\res\raw 这里可以放数据库文件和音频文件 文件名为sp.mp3 引用方法: MediaPlayer mp = Me ...
- 跟老刘学运维day01~谈红帽系统
第0章 谈红帽系统 1.Linux,是一套免费使用和自由传播的类Unix操作系统,其源代码完全开源: 开源:==>将程序与程序的源代码一起提供给用户的服务模式. 开源四大特点:低风险.高品质.低 ...
- R 常用基本函数
R 常用的数字.矩阵和数列的处理函数 数值篇 mean() #均值 colMeans() #对列求均值 sum() #求和 max() #最大值 min() #最小值 prod() #连乘 var() ...
- 数据库层级关系转换为树结构的json
原文链接:https://blog.csdn.net/Tonysdyp/article/details/80987959 首先是数据库设计: 通过查询数据库,将全局数据作为一个ArrayList< ...
- IDEA 2020.1.2,IDEA 2020.1.3永久破解(持续更新)
1. 本教程适用于 IntelliJ IDEA 2020.1.3 以下所有版本,请放心食用~2. 本教程适用于 JetBrains 全系列产品,包括 IDEA. Pycharm.WebStorm.Ph ...
- 自述:自学Java应该注意什么问题?
Hello,大家好,我是若风,我是一名IT从业者,纵观当今局势,国内IT互联网行业发展是比较好的,当然学IT技术的人员也特别多,网上的学习资源也非常多,现在有很多人在学技术,想想要进入到 IT这个行业 ...
- PHP rename() 函数
定义和用法 rename() 函数重命名文件或目录. 如果成功,该函数返回 TRUE.如果失败,则返回 FALSE. 语法 rename(oldname,newname,context) 参数 描述 ...
- PHP substr_count() 函数
实例 计算 "world" 在字符串中出现的次数: <?php高佣联盟 www.cgewang.comecho substr_count("Hello world. ...
- 小甲鱼零基础汇编语言学习笔记第五章之[BX]和loop指令
这一章主要介绍什么是[BX]以及loop(循环)指令怎么使用,loop和[BX]又怎么样相结合,段前缀又是什么鬼,以及如何使用段前缀. 1.[BX]的概念 [BX]和[0]类似 ...