The blog.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

120 lines
6.1 KiB

  1. ---
  2. title: "Crash Dumps: Do I submit them?"
  3. description: >
  4. TL;DR: No, they collect too much and aren't handled safely.
  5. posted: !!timestamp '2018-10-23'
  6. created: !!timestamp '2018-10-23'
  7. time: 3:54 PM
  8. tags:
  9. - security
  10. ---
  11. TL;DR: No, do not submit your crash dumps. Consumers: No company has
  12. sane crash dump policies to ensure your privacy and PII is protected,
  13. minimized and secured. Companies: You need to ensure that crash dumps
  14. are handled in a secure manner and that crash dumps are just that: a
  15. crash dump. Anything not directly related to a crash dump should be
  16. excluded. Usage statistics and the like do not belong in crash reports.
  17. ## Why Not Send Dumps?
  18. There is a long history of companies failing to minimize the data and
  19. to protect it. Microsoft for years sent crash dumps over the internet
  20. in the clear
  21. ([WER & Privacy conerns](https://en.wikipedia.org/wiki/Windows_Error_Reporting#Privacy_concerns_and_use_by_the_NSA)).
  22. This allowed the NSA to harvest them, and develop 0-days for issues that
  23. MS failed to fix. Google's Chrome would send a screencap of the entire
  24. Desktop along with it's crash dumps
  25. ([link](https://twitter.com/vmjulix/status/857482886097715200)). It
  26. previously would only send the window, but now sends the entire screen.
  27. Though they provide a preview, there is no way to see exactly what
  28. information will be sent.
  29. I do not relish in advising people to not submit crash dumps as this
  30. will impact developers ability to fix bugs. But as with all aspects of
  31. security, companies continue to demonstrate that they are not willing
  32. to do the work that is necessary to protect user's data and their
  33. privacy.
  34. ## Communication
  35. You need to communicate to your users how crash dumps are handled. Just
  36. saying, trust us, does not inspire confidence, as there are a large
  37. number of cases of data breaches where the company has said exactly that
  38. leading up to leaks. The policy is the first step to demonstrating that
  39. you have thought about user's concerns and decided how you will handle
  40. their personal and sensitive data.
  41. The policy also helps shape how employees will treat the data too. By
  42. having the policy, it is a reiteration to the employees that user data
  43. isn't simply chaff, but that it needs to be protected and handled with
  44. care.
  45. Just saying that it's protected by a privacy policy isn't enough. For
  46. example, Google Chrome's Report an Issue says that the information is
  47. protected by their privacy policy, but if you read the Chrome browser
  48. Privacy Policy, there is nothing in there that says how the data is
  49. handled. That it is handled like the rest of the data collected does
  50. not inspire confidence that the possibly confidential data that may be
  51. included will be handled with greater care.
  52. ## How to handle dumps
  53. The first step is to ensure that what is collected in the dump has
  54. minimum information needed to debug issues. Code paths (back traces)
  55. are likely to be safe. Data, such as arguments to functions, may include
  56. user data and needs to be carefully examined. There are many different
  57. types of data that can be released from embarrassing (what website was
  58. visited), to security breach (including cookies/tokens for web sites
  59. that may not be yours), to confidential intellectual property leaking
  60. (source code, designs, etc). Each of these may have different impact on
  61. the user, but should never happen.
  62. Second, crash dumps need to be transmitted confidentially. This means
  63. either using TLS or encrypting the dumps with a tool like GPG before
  64. sending. This ensures that unauthorized parties are unable to view the
  65. contents. The NSA used the dumps to gather information for their
  66. operations, which if Microsoft had properly protected their user's data,
  67. this would not have happened.
  68. Third, they need to be stored in a secure manner and able to be
  69. expunged. It should even be possible for the user to remove the crash
  70. dump if they discover that information was shared when it should not have
  71. been. The life time that a company keeps the dumps should be limited.
  72. If you haven't fixed a bug from five years ago, how do you know you can
  73. reproduce it, or that if you are able to reproduce it, that the code is
  74. still present in your current software? It the crash is a major issue,
  75. it is likely that you'll have more recent dumps that exhibit the same
  76. issue if it is a problem, so old dumps are just not as useful compared
  77. to the data that may be present.
  78. As crash data needs to be deleted, almost any cloud service is immediately
  79. excluded unless other precautions are used, such as encryption. With
  80. the cloud, you have zero visibility into how the data is managed and how
  81. or when it is backed up. Cloud providers rarely tell you their retention
  82. policies on back ups, and other policies that may keep data around. Do
  83. they securely remove your VM's storage when they migrate it? Do they
  84. ensure that storage is deleted from all clones, shards, servers and
  85. backups when you delete it? If not, how long will that data stay around
  86. before it is finally expunged.
  87. Fourth, access to dumps need to be controlled. Auditing is a good first
  88. step to know who is accessing the data, but additional measures like
  89. limiting who has access needs to be used. Not everyone on the team needs
  90. access to them. As they are classified, they can be assigned to teams
  91. or people that need access to the data in them. This helps make sure
  92. that an employee isn't trolling for nudes or other confidential
  93. information. It should also limit how easy data is copied out of the
  94. archive. How these controls are put in place will vary by company.
  95. Edit: Case in point: I recently opened a support case with Apple.
  96. Apple provides a program to collect data to send to them to help trouble
  97. shoot the issue. The program collected 280 MB of data. When uploading
  98. the data, Apple informs the user that it is their responsibility to NOT
  99. submit any personal information that they don't want. There is no way
  100. most people are qualified to look at the data, and even redact it
  101. properly. I
  102. [attempted to do so](https://twitter.com/encthenet/status/1057445997373087744),
  103. and it took a very long time, and I'm not sure that I got everything.
  104. Expecting a normal computer user to be able to do this is insane.