SlideShare a Scribd company logo
1 of 76
Download to read offline
MICROSOFT	
  VULNERABILITY	
  
RESEARCH	
  
How	
  to	
  be	
  a	
  finder	
  as	
  a	
  vendor	
  
WHO	
  ARE	
  THESE	
  FINE	
  GENTLEMEN	
  
!  David	
  Seidman	
  
!  Manager	
  of	
  MSVR	
  Program	
  
!  Likes	
  authentication,	
  hates	
  passwords	
  
!  Jeremy	
  Brown	
  
!  MSVR	
  Contributor	
  since	
  2011	
  
!  Likes	
  bugs,	
  but	
  also	
  likes	
  making	
  things	
  more	
  secure	
  
AGENDA	
  
!  What	
  is	
  Microsoft	
  Vulnerability	
  Research?	
  
!  The	
  MSVR	
  Process	
  
!  How	
  it	
  works	
  
!  And	
  how	
  things	
  can	
  go	
  wrong	
  
AGENDA	
  
!  Real	
  Case	
  Examples	
  
!  Libavcodec	
  
!  VMware	
  Player	
  
!  Blackberry	
  “Print	
  To	
  Go”	
  
!  Comodo	
  VNC	
  
!  Lessons	
  Learned	
  
WHAT	
  WE’RE	
  NOT	
  COVERING	
  
!  How	
  Microsoft	
  handles	
  vulnerabilities	
  in	
  3rd	
  party	
  software	
  distributed	
  with	
  our	
  
products	
  
!  Except	
  a	
  brief	
  discussion	
  of	
  bug	
  bounties	
  
!  Any	
  information	
  about	
  MSVR	
  bugs	
  in	
  the	
  queue	
  for	
  public	
  release	
  
!  The	
  ethics	
  of	
  disclosure	
  or	
  debating	
  which	
  philosophy	
  is	
  the	
  greatest	
  
WHAT	
  IS	
  MICROSOFT	
  
VULNERABILITY	
  RESEARCH?	
  
ORIGINS	
  
! MSVR	
  started	
  in	
  2008	
  
!  Founded	
  by	
  Katie	
  Moussouris	
  
!  Announced	
  at	
  the	
  BlackHat	
  conference	
  
ORIGINS	
  
! MSRC	
  cases	
  and	
  internal	
  finds	
  were	
  affecting	
  many	
  other	
  vendors	
  
! We	
  needed	
  a	
  way	
  to	
  coordinate	
  with	
  vendors	
  across	
  the	
  industry	
  in	
  order	
  to	
  
ensure	
  fixes	
  for	
  these	
  bugs	
  materialize	
  
MSVR	
  ISN'T	
  
!  MSRC	
  
!  Microsoft	
  Security	
  Response	
  Center	
  
!  Handles	
  security	
  incidents	
  and	
  vulnerabilities	
  affecting	
  Microsoft	
  products	
  
!  Microsoft	
  Bounty	
  Programs	
  
!  Cash	
  for	
  defensive	
  ideas	
  and	
  Online	
  Services	
  bugs	
  
!  More	
  on	
  these	
  later	
  
MSVR	
  ISN'T	
  
!  HackerOne	
  
!  Hosts	
  of	
  the	
  Internet	
  Bug	
  Bounty	
  program	
  
!  “Rewards	
  friendly	
  hackers	
  who	
  contribute	
  to	
  a	
  more	
  secure	
  internet”	
  
!  Sponsored	
  by	
  both	
  Microsoft	
  and	
  Facebook	
  
MSVR	
  IS…	
  
!  A	
  program	
  to	
  help	
  Microsoft	
  employees	
  report	
  security	
  vulnerabilities	
  to	
  third	
  
party	
  software	
  vendors	
  
!  Provide	
  assistance	
  to	
  finders	
  
!  People	
  to	
  answer	
  questions	
  and	
  ping	
  the	
  vendor	
  
!  Security	
  contact	
  database	
  
!  The	
  resources	
  to	
  find	
  contacts	
  if	
  no	
  public	
  ones	
  exist	
  
MSVR	
  IS…	
  
!  Objectives	
  
!  Prevent	
  miscommunication	
  
!  Keep	
  all	
  parties	
  informed	
  
!  Provide	
  transparency	
  for	
  both	
  sides	
  
MSVR	
  ADVISORIES	
  
!  Dedicated	
  Microsoft	
  webspace	
  to	
  display	
  and	
  archive	
  vulnerability	
  and	
  fix	
  
information	
  
!  http://technet.microsoft.com/en-­‐us/security/msvr	
  
!  Each	
  advisory	
  credits	
  the	
  researcher	
  for	
  the	
  find	
  
!  Unless	
  you	
  want	
  to	
  be	
  anonymous,	
  of	
  course	
  
WHY	
  THE	
  FOCUS	
  ON	
  THIRD	
  PARTY	
  
!  Windows	
  runs	
  lots	
  of	
  third-­‐party	
  code.	
  That	
  code	
  becomes	
  attack	
  surface	
  for	
  Microsoft	
  
users.	
  
!  Adobe	
  Reader	
  and	
  Oracle	
  Java	
  account	
  for	
  the	
  majority	
  exploits	
  used	
  to	
  compromise	
  PCs	
  
!  Not	
  just	
  PC	
  software	
  
!  Routers	
  in	
  our	
  datacenters	
  
!  Firmware	
  in	
  our	
  devices	
  
!  Apps	
  in	
  our	
  software	
  stores	
  
Reference:	
  http://download.microsoft.com/download/5/0/3/50310CCE-­‐8AF5-­‐4FB4-­‐83E2-­‐03F1DA92F33C/Microsoft_Security_Intelligence_Report_Volume_15_English.pdf	
  
WHY	
  THE	
  FOCUS	
  ON	
  THIRD	
  PARTY	
  
!  Often	
  the	
  vulnerabilities	
  affect	
  Microsoft	
  too	
  
!  Protocol	
  flaws	
  
!  DNS	
  
!  SSL	
  
!  Common	
  coding	
  and	
  design	
  flaws	
  
SECURING	
  THE	
  ECOSYSTEM	
  
!  Here’s	
  a	
  short	
  list	
  of	
  vendors	
  we’ve	
  worked	
  with	
  at	
  MSVR	
  
!  Adobe,	
  AOL,	
  Apple,	
  Blackberry,	
  CA,	
  Cisco,	
  Citibank,	
  Comodo,	
  Fidelity,	
  Google,	
  
Hex-­‐Rays,	
  HP,	
  IBM,	
  Intel,	
  Intuit,	
  Lenovo,	
  Mozilla,	
  Nullsoft,	
  Nvidia,	
  OpenOffice,	
  
Opera,	
  Oracle,	
  PGP,	
  RealNetworks,	
  SAP,	
  Symantec,	
  VMware,	
  Wireshark,	
  
WordPress,	
  Yahoo!	
  
!  ….as	
  well	
  as	
  many,	
  many	
  more	
  
GOALS	
  
!  Ensure	
  that	
  Microsoft	
  works	
  with	
  others	
  the	
  same	
  way	
  we’d	
  like	
  them	
  to	
  work	
  
with	
  us	
  
!  Coordinated	
  vulnerability	
  disclosure	
  so	
  that	
  Microsoft	
  employees	
  do	
  not	
  drop	
  0-­‐days	
  
!  Reproducible	
  and	
  interesting	
  bugs	
  
!  Good	
  repro	
  and	
  explanation	
  
Reference:	
  http://blogs.technet.com/b/msrc/archive/2011/04/19/coordinated-­‐vulnerability-­‐disclosure-­‐from-­‐philosophy-­‐to-­‐
practice.aspx	
  
GOALS	
  
!  Help	
  Microsoft	
  finders	
  out	
  
!  Make	
  sure	
  bugs	
  get	
  fixed	
  
!  Release	
  advisories	
  
!  Help	
  secure	
  the	
  Microsoft	
  ecosystem	
  
!  Build	
  relationships	
  with	
  other	
  vendors	
  
WHO	
  ARE	
  FINDERS?	
  
!  Individual	
  Microsoft	
  employees	
  who	
  find	
  security	
  bugs	
  for	
  various	
  reasons	
  
!  Hobby	
  
!  Securing	
  software	
  they	
  use	
  
!  Product	
  groups	
  working	
  extensively	
  with	
  a	
  third	
  party	
  product	
  
!  E.g.	
  Office	
  finding	
  Adobe	
  Reader	
  bugs	
  when	
  testing	
  Word’s	
  Save	
  as	
  PDF	
  function	
  
!  Often	
  many	
  bugs	
  are	
  discovered	
  at	
  once,	
  or	
  a	
  stream	
  of	
  bugs	
  is	
  generated	
  on	
  an	
  
ongoing	
  basis	
  
!  Product	
  groups	
  hitting	
  one-­‐off	
  bugs	
  
!  It	
  is	
  not	
  uncommon	
  to	
  hit	
  a	
  bug	
  in	
  a	
  third-­‐party	
  component	
  while	
  just	
  testing	
  
functionality	
  
WHICH	
  VULNERABILITIES	
  ARE	
  ELIGIBLE?	
  
!  Found	
  by	
  a	
  Microsoft	
  employee	
  
!  Whether	
  found	
  on	
  own	
  time	
  or	
  otherwise,	
  using	
  company	
  resources	
  or	
  not	
  
!  Critical	
  and	
  Important	
  on	
  SDL	
  Bug	
  Bar	
  
!  Remote	
  code	
  execution,	
  server	
  DoS,	
  XSS,	
  SQLi,	
  MITM,	
  a	
  few	
  others	
  
!  Affects	
  a	
  product	
  on	
  a	
  Microsoft	
  platform	
  or	
  used	
  in	
  a	
  Microsoft	
  datacenter	
  
!  E.g.	
  iPhone	
  apps	
  are	
  not	
  eligible	
  
!  These	
  aren’t	
  hard	
  rules	
  –	
  designed	
  to	
  ensure	
  high	
  ROI	
  
MSVR	
  REQUIREMENTS	
  
!  I	
  am	
  not	
  a	
  lawyer,	
  so	
  this	
  is	
  a	
  paraphrase	
  of	
  the	
  actual	
  policy	
  
!  Microsoft	
  employees	
  must	
  use	
  CVD	
  under	
  all	
  circumstances	
  
!  CVD:	
  Coordinated	
  Vulnerability	
  Disclosure	
  (the	
  new	
  one,	
  not	
  “responsible	
  disclosure”)	
  
!  =no	
  0days	
  per	
  Microsoft’s	
  policy	
  
!  Employees	
  must	
  notify	
  MSVR	
  of	
  all	
  vulnerabilities	
  they	
  report	
  
!  Exception:	
  existing	
  working/support/partnership	
  relationships	
  can	
  continue	
  
!  Using	
  MSVR	
  to	
  manage	
  the	
  process	
  is	
  optional	
  for	
  bugs	
  found	
  on	
  personal	
  time	
  
BUG	
  BOUNTIES	
  
!  Third-­‐party	
  bugs	
  found	
  outside	
  company	
  time	
  and	
  not	
  using	
  company	
  assets	
  
may	
  be	
  reported	
  through	
  a	
  vuln	
  broker	
  using	
  CVD	
  
!  The	
  employee	
  can	
  keep	
  the	
  money	
  
!  This	
  includes	
  bug	
  bounties	
  too	
  
!  Microsoft	
  bug	
  bounties	
  
!  Online	
  Services	
  
!  Mitigation	
  Bypass	
  
!  Purposes:	
  
!  Drive	
  thinking	
  in	
  new	
  areas	
  
!  Drive	
  focused	
  community	
  engagement	
  
THE	
  MSVR	
  PROCESS	
  
STEP	
  1:	
  REPORT	
  VULNERABILITY	
  
STEP	
  1	
  MISFIRE:	
  CLASSIC	
  0-­‐DAY	
  
!  <insert	
  any	
  Windows	
  0day	
  full	
  disclosure	
  post	
  here	
  in	
  the	
  last	
  20	
  years>	
  
STEP	
  2:	
  ENSURE	
  QUALITY	
  
!  MSVR	
  ensures	
  that	
  all	
  required	
  elements	
  are	
  present:	
  
!  Qualifying	
  bug	
  details	
  
!  Proof	
  of	
  concept	
  file	
  or	
  solid	
  repro	
  steps	
  
!  Description	
  of	
  issue,	
  including	
  affected	
  products	
  and	
  versions,	
  severity,	
  etc.	
  
!  Stack	
  trace	
  
!  Ideas	
  for	
  workarounds	
  or	
  code	
  fixes	
  
!  We’ll	
  go	
  back-­‐and-­‐forth	
  with	
  finders	
  until	
  it	
  meets	
  quality	
  bar	
  
!  Won’t	
  ship	
  if	
  it	
  doesn’t	
  
STEP	
  2	
  MISFIRE:	
  NOT	
  A	
  BUG	
  
!  When	
  logging	
  into	
  Windows	
  
!  If	
  you	
  have	
  the	
  number	
  8	
  in	
  your	
  login	
  password,	
  and	
  	
  
!  You	
  have	
  NumLock	
  off	
  and	
  	
  
!  You	
  use	
  the	
  number	
  pad	
  when	
  typing	
  the	
  number	
  8	
  
!  You	
  will	
  switch	
  focus	
  to	
  the	
  username	
  field	
  and	
  might	
  accidentally	
  type	
  the	
  rest	
  of	
  your	
  
password	
  into	
  the	
  username	
  field	
  
STEP	
  3:	
  CHECK	
  FOR	
  MICROSOFT	
  IMPACT	
  
!  Does	
  Microsoft	
  have	
  code	
  that	
  could	
  be	
  similarly	
  affected?	
  
!  Does	
  an	
  SSL	
  bug	
  affect	
  our	
  SSL	
  stack?	
  
!  Does	
  a	
  browser	
  bug	
  affect	
  Internet	
  Explorer?	
  
!  Etc.	
  
!  If	
  so,	
  coordinate	
  with	
  third	
  parties	
  to	
  align	
  their	
  fix	
  schedule	
  with	
  ours	
  
STEP	
  3	
  MISFIRE:	
  WE	
  0-­‐DAY	
  OURSELVES	
  
!  Microsoft	
  researchers:	
  Online	
  ad	
  networks’	
  payment	
  processing	
  can	
  be	
  
theoretically	
  exploited	
  for	
  fraud!	
  
!  Just	
  like	
  Bing’s	
  
!  Researchers:	
  “We	
  thought	
  it	
  would	
  be	
  okay	
  because	
  we	
  didn’t	
  mention	
  Bing”	
  
STEP	
  4:	
  REPORT	
  VULNERABILITY	
  
!  Find	
  the	
  vendor’s	
  security	
  contact	
  point	
  (email,	
  web	
  form,	
  etc)	
  if	
  we	
  don’t	
  
already	
  have	
  it	
  
!  If	
  they	
  don’t	
  have	
  one,	
  we	
  try	
  harder	
  ☺	
  
!  Tell	
  them	
  we	
  have	
  a	
  vulnerability	
  to	
  report	
  and	
  request	
  PGP	
  or	
  S/MIME	
  key	
  
!  Perhaps	
  explain	
  to	
  them	
  what	
  PGP	
  is…	
  
!  Encrypt	
  and	
  send	
  details	
  
STEP	
  4	
  MISFIRE:	
  SALES	
  PURGATORY	
  	
  
!  Vendor:	
  What’s	
  your	
  customer	
  ID?	
  
!  Microsoft:	
  We	
  don’t	
  have	
  a	
  customer	
  ID,	
  we	
  found	
  a	
  security	
  problem	
  with	
  your	
  
website.	
  
!  Vendor:	
  Oh,	
  well	
  with	
  no	
  customer	
  ID	
  we	
  can’t	
  help	
  you.	
  Would	
  you	
  like	
  to	
  buy	
  
our	
  product?	
  
!  Microsoft:	
  We	
  don’t	
  want	
  help	
  or	
  to	
  buy	
  your	
  product.	
  We’re	
  trying	
  to	
  help	
  you.	
  
!  Vendor:	
  Thank	
  you	
  for	
  contacting	
  Vendor.	
  Your	
  email	
  is	
  very	
  important	
  to	
  us.	
  
STEP	
  5:	
  MONITOR	
  
!  Follow	
  up	
  with	
  company	
  and	
  internal	
  finder	
  to	
  track	
  their	
  fix	
  through	
  release	
  
!  Resolve	
  questions	
  about	
  repro	
  and	
  severity	
  
!  Vendor	
  may	
  send	
  a	
  private,	
  fixed	
  version	
  for	
  the	
  finder	
  to	
  confirm	
  the	
  bug	
  is	
  
fixed	
  
!  Keep	
  all	
  parties	
  up	
  to	
  date	
  with	
  plans	
  for	
  updates,	
  blog	
  post,	
  conference	
  
presentations,	
  etc.	
  
STEP	
  5	
  MISFIRE:	
  SURPRISE!	
  
!  Oh	
  that	
  bug?	
  We	
  patched	
  that	
  six	
  months	
  ago.	
  
STEP	
  6:	
  SHIP	
  UPDATE	
  
!  Vendor	
  releases	
  update	
  
!  Implore	
  them	
  to	
  credit	
  our	
  researcher	
  
!  If	
  they	
  “forget”,	
  we’ll	
  ping	
  them	
  and	
  recommend	
  it	
  again	
  ☺	
  
STEP	
  6	
  MISFIRE:	
  NO	
  CREDIT	
  
!  Vendor:	
  Here’s	
  the	
  fix!	
  <no	
  credit	
  to	
  finder>	
  
!  Finder:	
  Hey!	
  
STEP	
  7:	
  MSVR	
  ADVISORY	
  
!  Released	
  when	
  we	
  think	
  a	
  bug	
  particularly	
  merits	
  Microsoft	
  customers’	
  attention	
  
!  Optional	
  
!  Not	
  all	
  vulnerabilities	
  get	
  advisories	
  
!  Released	
  with	
  or	
  (typically)	
  after	
  the	
  vendor	
  releases	
  a	
  patch	
  
!  In	
  case	
  of	
  active	
  attacks,	
  we	
  could	
  release	
  one	
  proactively,	
  but	
  we	
  have	
  yet	
  to	
  do	
  so	
  
!  Purpose	
  is	
  to	
  notify	
  our	
  customers	
  of	
  the	
  patch	
  and	
  remind	
  them	
  to	
  install	
  it	
  
!  Finder	
  always	
  has	
  the	
  option	
  to	
  release	
  their	
  own	
  advisory	
  in	
  coordination	
  with	
  
MSVR	
  once	
  vendor	
  has	
  patched	
  
STEP	
  7B:	
  MSVR	
  CREDITS	
  
!  When	
  we	
  don’t	
  do	
  a	
  full	
  advisory,	
  still	
  provide	
  internal	
  finders	
  credit	
  
CASE	
  STUDIES	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  MSVR12-­‐017	
  
!  Vulnerabilities	
  in	
  FFmpeg	
  Libavcodec	
  Could	
  Allow	
  Arbitrary	
  Code	
  Execution	
  
!  Fuzzing	
  VLC	
  with	
  WMA	
  files..	
  Boom	
  
!  But	
  it’s	
  obviously	
  easier	
  to	
  find	
  a	
  crash	
  than	
  to	
  figure	
  out	
  what	
  caused	
  it	
  
Reference:	
  http://technet.microsoft.com/en-­‐us/security/msvr/msvr12-­‐017	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  !Exploitable	
  says	
  a	
  WriteAV	
  at	
  libavcodec_plugin.dll	
  
!  Looks	
  like	
  this	
  isn’t	
  a	
  bug	
  in	
  VLC,	
  but	
  in	
  the	
  included	
  A/V	
  codec	
  
!  Let’s	
  diff	
  to	
  see	
  what	
  the	
  fuzzer	
  changed	
  in	
  the	
  template	
  to	
  make	
  our	
  repro	
  file!	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  We	
  can	
  see	
  that	
  the	
  0x0001	
  was	
  changed	
  to	
  0x0007	
  
!  But	
  what	
  is	
  that	
  word	
  value	
  anyways?	
  
!  And	
  how	
  do	
  I	
  already	
  know	
  it’s	
  a	
  word?	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  Meet	
  OffVis	
  
!  “The	
  Microsoft	
  Office	
  Visualization	
  Tool	
  (OffVis)	
  allows	
  IT	
  professionals,	
  security	
  
researchers	
  and	
  malware	
  protection	
  vendors	
  to	
  better	
  understand	
  the	
  Microsoft	
  Office	
  
binary	
  file	
  format	
  in	
  order	
  to	
  deconstruct	
  .doc-­‐,	
  .xls-­‐	
  and	
  .ppt-­‐based	
  targeted	
  attacks”	
  
!  Free	
  public	
  version	
  available	
  on	
  the	
  Microsoft	
  download	
  website	
  
!  But	
  it’s	
  not	
  actually	
  specifically	
  for	
  office	
  documents.	
  OffVis	
  uses	
  GUT	
  templates,	
  which	
  
is	
  the	
  same	
  concept	
  as	
  010	
  editor	
  binary	
  templates:	
  describing	
  file	
  formats	
  in	
  order	
  to	
  
parse	
  and	
  edit	
  such	
  files	
  smarter.	
  
Reference:	
  http://www.microsoft.com/en-­‐us/download/details.aspx?id=2096	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  So	
  we	
  know	
  a	
  few	
  more	
  things	
  now!	
  
!  ASF	
  is	
  the	
  container	
  format	
  for	
  WMA	
  files	
  
!  A	
  quick	
  search	
  for	
  “Number	
  of	
  Channels”	
  in	
  the	
  ASF	
  specification	
  tells	
  us	
  
!  It’s	
  a	
  16-­‐bit	
  value	
  
!  It’s	
  a	
  member	
  of	
  the	
  WAVEFORMATEX	
  structure	
  
!  It’s	
  the	
  “number	
  of	
  audio	
  channels”	
  for	
  this	
  content	
  
!  Manual	
  testing	
  shows	
  that	
  changing	
  the	
  value	
  from	
  0x0003	
  -­‐	
  0x0008	
  causes	
  a	
  crash	
  
!  Also	
  noteworthy,	
  changing	
  it	
  to	
  0x0009	
  results	
  in	
  VLC	
  displaying	
  an	
  error	
  dialog	
  about	
  how	
  
VLC	
  does	
  not	
  support	
  the	
  WMA2	
  file	
  format	
  
Reference:	
  http://msdn.microsoft.com/en-­‐us/library/bb643323.aspx	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  Now	
  take	
  a	
  look	
  at	
  the	
  couple	
  of	
  instructions	
  before	
  the	
  crash	
  
!  pop	
  ebx	
  
!  call	
  dword	
  ptr[ebx+30h]	
  
!  Anyone	
  else	
  smiling?	
  ☺	
  
!  For	
  those	
  not	
  immediately	
  enlightened,	
  this	
  is	
  very	
  promising	
  for	
  exploitation	
  
!  As	
  long	
  as	
  we	
  have	
  some	
  kind	
  of	
  influence	
  or	
  control	
  over	
  the	
  ebx	
  register	
  
!  And	
  there’s	
  a	
  pop	
  before	
  the	
  call..	
  well,	
  the	
  stack	
  is	
  our	
  friend	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  We’ve	
  got	
  our	
  original	
  and	
  repro	
  files,	
  quick	
  write-­‐up	
  and	
  ready	
  to	
  share	
  with	
  
msvr@microsoft.com	
  
!  They	
  packaged	
  up	
  the	
  deliverables	
  and	
  sent	
  them	
  off	
  to	
  the	
  vendor	
  
!  Handled	
  coordination	
  
!  Status	
  updates	
  
!  Questions	
  from	
  the	
  vendor	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
!  The	
  vulnerability	
  was	
  patched	
  in	
  May,	
  2012	
  and	
  the	
  advisory	
  was	
  released	
  a	
  few	
  
months	
  later	
  
CASE	
  STUDY:	
  LIBAVCODEC	
  
CASE	
  STUDY:	
  VMWARE	
  
!  MSVR13-­‐002	
  
!  Vulnerabilities	
  in	
  VMware	
  OVF	
  Tool	
  Could	
  Allow	
  Arbitrary	
  Code	
  Execution	
  
!  Step	
  1:	
  What	
  file	
  types	
  does	
  VMware	
  handle?	
  
!  VMX	
  
!  VMDK	
  
!  OVF	
  
!  …more	
  
Reference:	
  http://technet.microsoft.com/en-­‐us/security/msvr/msvr13-­‐002	
  
CASE	
  STUDY:	
  VMWARE	
  
!  Step	
  2:	
  What	
  is	
  OVF?	
  
!  Open	
  Virtual	
  Machine	
  Format	
  
!  “an	
  open,	
  secure,	
  portable,	
  efficient	
  and	
  extensible	
  format	
  for	
  the	
  packing	
  and	
  
distribution	
  of	
  (collections	
  of)	
  virtual	
  machines”	
  
Reference:	
  http://www.vmware.com/pdf/ovf_whitepaper_specification.pdf	
  
CASE	
  STUDY:	
  VMWARE	
  
!  TL;DR–	
  It’s	
  a	
  xml-­‐based	
  file	
  format	
  for	
  describing	
  virtual	
  machine	
  data	
  
!  And	
  since	
  XML	
  implies	
  describing	
  and	
  consuming	
  untrusted	
  data..	
  probably	
  a	
  worthy	
  
target	
  
CASE	
  STUDY:	
  VMWARE	
  
!  Step	
  3:	
  How	
  does	
  VMware	
  load	
  OVF	
  files?	
  
!  Upon	
  loading	
  a	
  OVF	
  file,	
  it	
  executes	
  ovftool.exe	
  
!  Nearly	
  the	
  same	
  as	
  having	
  the	
  OVF	
  parsing	
  code	
  in	
  VMware	
  player	
  
CASE	
  STUDY:	
  VMWARE	
  
Step	
  4:	
  What	
  is	
  OVFTool?	
  
CASE	
  STUDY:	
  VMWARE	
  
Step	
  5:	
  Find	
  a	
  interesting	
  crash	
  or	
  other	
  unexpected	
  behavior	
  
<?xml	
  version="1.0"	
  encoding="utf-­‐8"?>	
  
<ovf:Envelope	
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"	
  
xmlns:ovf="%p.%p.%p.%p.%p.%p.%p.%p"	
  xmlns:vssd="http://schemas.dmtf.org/wbem/
wscim/1/cim-­‐schema/2/CIM_VirtualSystemSettingData"	
  	
  
…	
  
</ovf:Envelope>	
  	
  
CASE	
  STUDY:	
  VMWARE	
  
And	
  when	
  we	
  load	
  the	
  OVF	
  file	
  in	
  VMware..	
  
CASE	
  STUDY:	
  VMWARE	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
!  Submitted	
  as,	
  “Blackberry	
  Print	
  To	
  Go	
  Auth	
  Bypass”	
  
!  But	
  what	
  can	
  we	
  gain	
  from	
  this	
  bug?	
  
!  What	
  is	
  Blackberry	
  PTG?	
  
!  Allows	
  you	
  to	
  “print”	
  documents	
  from	
  your	
  computer	
  to	
  your	
  BlackBerry	
  Playbook	
  
tablet	
  
!  E.g.	
  Install	
  the	
  software	
  on	
  your	
  PC	
  and	
  you	
  can	
  send	
  anything	
  you	
  can	
  print	
  as	
  a	
  PDF	
  to	
  
your	
  Playbook	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
!  In	
  order	
  to	
  send	
  documents	
  to	
  the	
  Playbook,	
  the	
  user	
  must	
  do	
  the	
  following	
  
!  Log	
  into	
  the	
  service	
  using	
  your	
  BlackBerry	
  ID	
  (user/pass)	
  
!  Encrypt	
  the	
  documents	
  using	
  a	
  password	
  generated	
  from	
  the	
  PTG	
  app	
  on	
  the	
  Playbook	
  
!  Find	
  the	
  device	
  using	
  the	
  it’s	
  PIN	
  
!  We	
  can	
  bypass	
  this	
  locally	
  
!  Therefore	
  we	
  won’t	
  need	
  to	
  login	
  to	
  Blackberry	
  to	
  perhaps	
  “print”	
  documents	
  to	
  a	
  
device	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
!  There’s	
  something	
  listening	
  on	
  port	
  1234..	
  interesting	
  
!  With	
  the	
  BB	
  login	
  dialog	
  open,	
  start	
  a	
  web	
  browser	
  and	
  simply	
  point	
  it	
  to	
  this	
  
URL	
  
!  http://localhost:1234/myserverlet/	
  
!  The	
  login	
  dialog	
  will	
  immediately	
  continue	
  to	
  the	
  next	
  page	
  
!  Therefore	
  bypassing	
  authentication	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
!  Theory	
  
!  The	
  login	
  procedure	
  checks	
  if	
  it	
  receives	
  data	
  on	
  listening	
  port	
  1234,	
  not	
  the	
  data’s	
  
validity	
  (at	
  least	
  well	
  enough)	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
CASE	
  STUDY:	
  BLACKBERRY	
  PTG	
  
!  So	
  what	
  could	
  one	
  gain	
  from	
  bypassing	
  this	
  login	
  page?	
  
!  There	
  wasn’t	
  a	
  Playbook	
  tablet	
  to	
  completely	
  test	
  the	
  exploit	
  scenarios	
  
!  We	
  handed	
  the	
  report	
  to	
  BlackBerry	
  security	
  with	
  our	
  ideas	
  so	
  they	
  could	
  test	
  internally	
  
!  BB	
  concluded	
  that	
  while	
  this	
  was	
  undesirable	
  behavior,	
  it	
  wasn’t	
  a	
  security	
  issue	
  
!  “Printing	
  does	
  not	
  succeed	
  as	
  the	
  Connector	
  does	
  not	
  have	
  the	
  BlackBerry	
  ID	
  account	
  
info	
  and	
  token	
  needed	
  for	
  printing”	
  
!  Without	
  a	
  Playbook	
  on	
  hand,	
  it	
  was	
  tough	
  to	
  test	
  this	
  remaining	
  step	
  
!  We	
  didn’t	
  know	
  if	
  it	
  would	
  succeed	
  or	
  not	
  with	
  a	
  real	
  device	
  connected	
  
!  Better	
  to	
  submit	
  anyways	
  so	
  they	
  could	
  confirm	
  with	
  us	
  
LESSONS	
  LEARNED	
  
!  Vendors	
  range	
  greatly	
  in	
  their	
  capacity	
  
!  Which	
  is	
  not	
  necessarily	
  correlated	
  with	
  size	
  
!  Some	
  small	
  development	
  teams	
  are	
  very	
  responsive,	
  others	
  are	
  not	
  
!  Some	
  big	
  companies	
  have	
  effective	
  and	
  established	
  procedures,	
  others	
  mire	
  you	
  in	
  
bureaucracy	
  
LESSONS	
  LEARNED	
  
!  Setting	
  limits	
  is	
  important	
  
!  Pen-­‐testing	
  the	
  web	
  and	
  dumped	
  hundreds	
  of	
  bugs	
  on	
  us	
  for	
  most	
  for	
  relatively	
  
unimportant	
  sites	
  doesn’t	
  scale	
  too	
  well	
  
!  Finders	
  may	
  report	
  low-­‐severity	
  bugs	
  that	
  they	
  think	
  are	
  very	
  serious	
  
!  Employees	
  like	
  this	
  program!	
  
WHY	
  YOU	
  SHOULD	
  RUN	
  YOUR	
  OWN	
  MSVR	
  
!  Give	
  employees	
  a	
  standard,	
  end-­‐to-­‐end	
  process	
  for	
  getting	
  security	
  bugs	
  fixed	
  
!  Inter-­‐company	
  bug	
  reporting	
  can	
  be	
  more	
  coordinated	
  and	
  efficient	
  
!  Relatively	
  cheap	
  to	
  run,	
  with	
  high	
  ROI	
  
!  Boost	
  employee	
  morale	
  
!  Secure	
  the	
  ecosystem,	
  as	
  your	
  product	
  likely	
  depends	
  on	
  *something*	
  
!  Eg.	
  HackerOne	
  bug	
  bounty	
  program	
  has	
  a	
  bounty	
  for	
  “The	
  Internet”	
  
WHAT	
  WE'D	
  LIKE	
  TO	
  SEE	
  WHEN	
  REPORTING	
  
VULNERABILITIES	
  
!  Clearly	
  identified	
  point	
  of	
  contact	
  
!  Public	
  encryption	
  key	
  (PGP	
  or	
  S/MIME)	
  
!  Direct	
  line	
  to	
  a	
  real	
  person	
  who	
  understands	
  security	
  
!  Don't	
  turn	
  us	
  away	
  because	
  we	
  don't	
  have	
  a	
  support	
  contract!	
  
WHAT	
  WE'D	
  LIKE	
  TO	
  SEE	
  WHEN	
  REPORTING	
  
VULNERABILITIES	
  
! Clear	
  communication	
  
!  Acknowledgment	
  receipt	
  of	
  the	
  initial	
  email	
  
!  Repro,	
  including	
  affected	
  platforms	
  
!  Update	
  release	
  dates,	
  including	
  any	
  delays	
  
!  How	
  we	
  will	
  be	
  credited	
  (ask	
  us	
  for	
  our	
  preference!)	
  
!  Closure	
  
!  Variant	
  investigation	
  
!  Relatively	
  prompt	
  fixes	
  
QUESTIONS?	
  
CONTACT	
  
!  msvr@microsoft.com	
  
©2014	
  Microsoft	
  Corporation.	
  All	
  Rights	
  Reserved.	
  
This	
  document	
  is	
  provided	
  "as-­‐is."	
  Information	
  and	
  views	
  expressed	
  in	
  this	
  
document,	
  including	
  URL	
  and	
  other	
  Internet	
  Web	
  site	
  references,	
  may	
  change	
  
without	
  notice.	
  You	
  bear	
  the	
  risk	
  of	
  using	
  it.	
  Some	
  examples	
  are	
  for	
  illustration	
  
only	
  and	
  are	
  fictitious.	
  No	
  real	
  association	
  is	
  intended	
  or	
  inferred.	
  This	
  document	
  
does	
  not	
  provide	
  you	
  with	
  any	
  legal	
  rights	
  to	
  any	
  intellectual	
  property	
  owned	
  by	
  
Microsoft.	
  You	
  may	
  copy	
  and	
  use	
  this	
  document	
  for	
  your	
  internal,	
  reference	
  
purposes.	
  

More Related Content

Similar to CODE BLUE 2014 : Microsoft Vulnerability Research: How to be a Finder as a Vendor by DAVID SEIDMAN

INSECURE Magazine - 35
INSECURE Magazine - 35INSECURE Magazine - 35
INSECURE Magazine - 35Felipe Prado
 
Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Nick Galbreath
 
Fixing security by fixing software development
Fixing security by fixing software developmentFixing security by fixing software development
Fixing security by fixing software developmentNick Galbreath
 
Asset Discovery in India – Redhunt Labs
Asset Discovery in India – Redhunt LabsAsset Discovery in India – Redhunt Labs
Asset Discovery in India – Redhunt LabsRedhuntLabs2
 
Data Security in Fintech App Development: How PHP Can Help
Data Security in Fintech App Development: How PHP Can HelpData Security in Fintech App Development: How PHP Can Help
Data Security in Fintech App Development: How PHP Can HelpNarola Infotech
 
IIS Security And Programming Countermeasures
IIS Security And Programming CountermeasuresIIS Security And Programming Countermeasures
IIS Security And Programming CountermeasuresJason Coombs
 
Java Application Development Vulnerabilities
Java Application Development VulnerabilitiesJava Application Development Vulnerabilities
Java Application Development VulnerabilitiesNarola Infotech
 
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...Denim Group
 
INSECURE Magazine - 37
INSECURE Magazine - 37INSECURE Magazine - 37
INSECURE Magazine - 37Felipe Prado
 
10 Best DevSecOps Tools for 2023
10 Best DevSecOps Tools for 202310 Best DevSecOps Tools for 2023
10 Best DevSecOps Tools for 2023SofiaCarter4
 
Scaling Web 2.0 Malware Infection
Scaling Web 2.0 Malware InfectionScaling Web 2.0 Malware Infection
Scaling Web 2.0 Malware InfectionWayne Huang
 
TRISC 2010 - Grapevine , Texas
TRISC 2010 - Grapevine , TexasTRISC 2010 - Grapevine , Texas
TRISC 2010 - Grapevine , TexasAditya K Sood
 
Web security – application security roads to software security nirvana iisf...
Web security – application security roads to software security nirvana   iisf...Web security – application security roads to software security nirvana   iisf...
Web security – application security roads to software security nirvana iisf...Eoin Keary
 
We cant hack ourselves secure
We cant hack ourselves secureWe cant hack ourselves secure
We cant hack ourselves secureEoin Keary
 
7 Experts on Implementing Microsoft Defender for Endpoint
7 Experts on Implementing Microsoft Defender for Endpoint7 Experts on Implementing Microsoft Defender for Endpoint
7 Experts on Implementing Microsoft Defender for EndpointMighty Guides, Inc.
 
2016 CYBERSECURITY PLAYBOOK
2016 CYBERSECURITY PLAYBOOK2016 CYBERSECURITY PLAYBOOK
2016 CYBERSECURITY PLAYBOOKBoris Loukanov
 
Security engineering 101 when good design & security work together
Security engineering 101  when good design & security work togetherSecurity engineering 101  when good design & security work together
Security engineering 101 when good design & security work togetherWendy Knox Everette
 
Web Application Security - Everything You Should Know
Web Application Security - Everything You Should KnowWeb Application Security - Everything You Should Know
Web Application Security - Everything You Should KnowNarola Infotech
 
Secure Your DevOps Pipeline Best Practices Meetup 08022024.pptx
Secure Your DevOps Pipeline Best Practices Meetup 08022024.pptxSecure Your DevOps Pipeline Best Practices Meetup 08022024.pptx
Secure Your DevOps Pipeline Best Practices Meetup 08022024.pptxlior mazor
 
Security is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White PaperSecurity is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White PaperMohd Anwar Jamal Faiz
 

Similar to CODE BLUE 2014 : Microsoft Vulnerability Research: How to be a Finder as a Vendor by DAVID SEIDMAN (20)

INSECURE Magazine - 35
INSECURE Magazine - 35INSECURE Magazine - 35
INSECURE Magazine - 35
 
Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013
 
Fixing security by fixing software development
Fixing security by fixing software developmentFixing security by fixing software development
Fixing security by fixing software development
 
Asset Discovery in India – Redhunt Labs
Asset Discovery in India – Redhunt LabsAsset Discovery in India – Redhunt Labs
Asset Discovery in India – Redhunt Labs
 
Data Security in Fintech App Development: How PHP Can Help
Data Security in Fintech App Development: How PHP Can HelpData Security in Fintech App Development: How PHP Can Help
Data Security in Fintech App Development: How PHP Can Help
 
IIS Security And Programming Countermeasures
IIS Security And Programming CountermeasuresIIS Security And Programming Countermeasures
IIS Security And Programming Countermeasures
 
Java Application Development Vulnerabilities
Java Application Development VulnerabilitiesJava Application Development Vulnerabilities
Java Application Development Vulnerabilities
 
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
 
INSECURE Magazine - 37
INSECURE Magazine - 37INSECURE Magazine - 37
INSECURE Magazine - 37
 
10 Best DevSecOps Tools for 2023
10 Best DevSecOps Tools for 202310 Best DevSecOps Tools for 2023
10 Best DevSecOps Tools for 2023
 
Scaling Web 2.0 Malware Infection
Scaling Web 2.0 Malware InfectionScaling Web 2.0 Malware Infection
Scaling Web 2.0 Malware Infection
 
TRISC 2010 - Grapevine , Texas
TRISC 2010 - Grapevine , TexasTRISC 2010 - Grapevine , Texas
TRISC 2010 - Grapevine , Texas
 
Web security – application security roads to software security nirvana iisf...
Web security – application security roads to software security nirvana   iisf...Web security – application security roads to software security nirvana   iisf...
Web security – application security roads to software security nirvana iisf...
 
We cant hack ourselves secure
We cant hack ourselves secureWe cant hack ourselves secure
We cant hack ourselves secure
 
7 Experts on Implementing Microsoft Defender for Endpoint
7 Experts on Implementing Microsoft Defender for Endpoint7 Experts on Implementing Microsoft Defender for Endpoint
7 Experts on Implementing Microsoft Defender for Endpoint
 
2016 CYBERSECURITY PLAYBOOK
2016 CYBERSECURITY PLAYBOOK2016 CYBERSECURITY PLAYBOOK
2016 CYBERSECURITY PLAYBOOK
 
Security engineering 101 when good design & security work together
Security engineering 101  when good design & security work togetherSecurity engineering 101  when good design & security work together
Security engineering 101 when good design & security work together
 
Web Application Security - Everything You Should Know
Web Application Security - Everything You Should KnowWeb Application Security - Everything You Should Know
Web Application Security - Everything You Should Know
 
Secure Your DevOps Pipeline Best Practices Meetup 08022024.pptx
Secure Your DevOps Pipeline Best Practices Meetup 08022024.pptxSecure Your DevOps Pipeline Best Practices Meetup 08022024.pptx
Secure Your DevOps Pipeline Best Practices Meetup 08022024.pptx
 
Security is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White PaperSecurity is our duty and we shall deliver it - White Paper
Security is our duty and we shall deliver it - White Paper
 

More from CODE BLUE

[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...CODE BLUE
 
[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten NohlCODE BLUE
 
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo PupilloCODE BLUE
 
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman [cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman CODE BLUE
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...CODE BLUE
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫CODE BLUE
 
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...CODE BLUE
 
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka [cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka CODE BLUE
 
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...CODE BLUE
 
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...CODE BLUE
 
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...CODE BLUE
 
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...CODE BLUE
 
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也CODE BLUE
 
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...CODE BLUE
 
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...CODE BLUE
 

More from CODE BLUE (20)

[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...[cb22] Hayabusa  Threat Hunting and Fast Forensics in Windows environments fo...
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
 
[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl[cb22] Tales of 5G hacking by Karsten Nohl
[cb22] Tales of 5G hacking by Karsten Nohl
 
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...[cb22]  Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
[cb22] Your Printer is not your Printer ! - Hacking Printers at Pwn2Own by A...
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(4) by 板橋 博之
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(3) by Lorenzo Pupillo
 
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...[cb22]  ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
[cb22] ”The Present and Future of Coordinated Vulnerability Disclosure” Inte...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman [cb22]  「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション(2)by Allan Friedman
 
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
[cb22] "The Present and Future of Coordinated Vulnerability Disclosure" Inter...
 
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by  高橋 郁夫
[cb22] 「協調された脆弱性開示の現在と未来」国際的なパネルディスカッション (1)by 高橋 郁夫
 
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
[cb22] Are Embedded Devices Ready for ROP Attacks? -ROP verification for low-...
 
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka [cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
[cb22] Wslinkのマルチレイヤーな仮想環境について by Vladislav Hrčka
 
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
[cb22] Under the hood of Wslink’s multilayered virtual machine en by Vladisla...
 
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
[cb22] CloudDragon’s Credential Factory is Powering Up Its Espionage Activiti...
 
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...[cb22]  From Parroting to Echoing:  The Evolution of China’s Bots-Driven Info...
[cb22] From Parroting to Echoing: The Evolution of China’s Bots-Driven Info...
 
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...[cb22]  Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
[cb22] Who is the Mal-Gopher? - Implementation and Evaluation of “gimpfuzzy”...
 
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
[cb22] Mal-gopherとは?Go系マルウェアの分類のためのgimpfuzzy実装と評価 by 澤部 祐太, 甘粕 伸幸, 野村 和也
 
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
[cb22] Tracking the Entire Iceberg - Long-term APT Malware C2 Protocol Emulat...
 
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...
 

Recently uploaded

Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...marjmae69
 
Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Escort Service
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Krijn Poppe
 
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...Henrik Hanke
 
miladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxmiladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxCarrieButtitta
 
Chizaram's Women Tech Makers Deck. .pptx
Chizaram's Women Tech Makers Deck.  .pptxChizaram's Women Tech Makers Deck.  .pptx
Chizaram's Women Tech Makers Deck. .pptxogubuikealex
 
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRRINDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRRsarwankumar4524
 
The Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationThe Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationNathan Young
 
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power
 
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.comSaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.comsaastr
 
Event 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptxEvent 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptxaryanv1753
 
Quality by design.. ppt for RA (1ST SEM
Quality by design.. ppt for  RA (1ST SEMQuality by design.. ppt for  RA (1ST SEM
Quality by design.. ppt for RA (1ST SEMCharmi13
 
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.KathleenAnnCordero2
 
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATIONRACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATIONRachelAnnTenibroAmaz
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSebastiano Panichella
 
Early Modern Spain. All about this period
Early Modern Spain. All about this periodEarly Modern Spain. All about this period
Early Modern Spain. All about this periodSaraIsabelJimenez
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSebastiano Panichella
 
Anne Frank A Beacon of Hope amidst darkness ppt.pptx
Anne Frank A Beacon of Hope amidst darkness ppt.pptxAnne Frank A Beacon of Hope amidst darkness ppt.pptx
Anne Frank A Beacon of Hope amidst darkness ppt.pptxnoorehahmad
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxmavinoikein
 

Recently uploaded (20)

Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
 
Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
 
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
 
miladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxmiladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptx
 
Chizaram's Women Tech Makers Deck. .pptx
Chizaram's Women Tech Makers Deck.  .pptxChizaram's Women Tech Makers Deck.  .pptx
Chizaram's Women Tech Makers Deck. .pptx
 
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRRINDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRR
 
The Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationThe Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism Presentation
 
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
 
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.comSaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
 
Event 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptxEvent 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptx
 
Quality by design.. ppt for RA (1ST SEM
Quality by design.. ppt for  RA (1ST SEMQuality by design.. ppt for  RA (1ST SEM
Quality by design.. ppt for RA (1ST SEM
 
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
 
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATIONRACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation Track
 
Early Modern Spain. All about this period
Early Modern Spain. All about this periodEarly Modern Spain. All about this period
Early Modern Spain. All about this period
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
 
Anne Frank A Beacon of Hope amidst darkness ppt.pptx
Anne Frank A Beacon of Hope amidst darkness ppt.pptxAnne Frank A Beacon of Hope amidst darkness ppt.pptx
Anne Frank A Beacon of Hope amidst darkness ppt.pptx
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptx
 

CODE BLUE 2014 : Microsoft Vulnerability Research: How to be a Finder as a Vendor by DAVID SEIDMAN

  • 1. MICROSOFT  VULNERABILITY   RESEARCH   How  to  be  a  finder  as  a  vendor  
  • 2. WHO  ARE  THESE  FINE  GENTLEMEN   !  David  Seidman   !  Manager  of  MSVR  Program   !  Likes  authentication,  hates  passwords   !  Jeremy  Brown   !  MSVR  Contributor  since  2011   !  Likes  bugs,  but  also  likes  making  things  more  secure  
  • 3. AGENDA   !  What  is  Microsoft  Vulnerability  Research?   !  The  MSVR  Process   !  How  it  works   !  And  how  things  can  go  wrong  
  • 4. AGENDA   !  Real  Case  Examples   !  Libavcodec   !  VMware  Player   !  Blackberry  “Print  To  Go”   !  Comodo  VNC   !  Lessons  Learned  
  • 5. WHAT  WE’RE  NOT  COVERING   !  How  Microsoft  handles  vulnerabilities  in  3rd  party  software  distributed  with  our   products   !  Except  a  brief  discussion  of  bug  bounties   !  Any  information  about  MSVR  bugs  in  the  queue  for  public  release   !  The  ethics  of  disclosure  or  debating  which  philosophy  is  the  greatest  
  • 6. WHAT  IS  MICROSOFT   VULNERABILITY  RESEARCH?  
  • 7. ORIGINS   ! MSVR  started  in  2008   !  Founded  by  Katie  Moussouris   !  Announced  at  the  BlackHat  conference  
  • 8. ORIGINS   ! MSRC  cases  and  internal  finds  were  affecting  many  other  vendors   ! We  needed  a  way  to  coordinate  with  vendors  across  the  industry  in  order  to   ensure  fixes  for  these  bugs  materialize  
  • 9. MSVR  ISN'T   !  MSRC   !  Microsoft  Security  Response  Center   !  Handles  security  incidents  and  vulnerabilities  affecting  Microsoft  products   !  Microsoft  Bounty  Programs   !  Cash  for  defensive  ideas  and  Online  Services  bugs   !  More  on  these  later  
  • 10. MSVR  ISN'T   !  HackerOne   !  Hosts  of  the  Internet  Bug  Bounty  program   !  “Rewards  friendly  hackers  who  contribute  to  a  more  secure  internet”   !  Sponsored  by  both  Microsoft  and  Facebook  
  • 11. MSVR  IS…   !  A  program  to  help  Microsoft  employees  report  security  vulnerabilities  to  third   party  software  vendors   !  Provide  assistance  to  finders   !  People  to  answer  questions  and  ping  the  vendor   !  Security  contact  database   !  The  resources  to  find  contacts  if  no  public  ones  exist  
  • 12. MSVR  IS…   !  Objectives   !  Prevent  miscommunication   !  Keep  all  parties  informed   !  Provide  transparency  for  both  sides  
  • 13. MSVR  ADVISORIES   !  Dedicated  Microsoft  webspace  to  display  and  archive  vulnerability  and  fix   information   !  http://technet.microsoft.com/en-­‐us/security/msvr   !  Each  advisory  credits  the  researcher  for  the  find   !  Unless  you  want  to  be  anonymous,  of  course  
  • 14. WHY  THE  FOCUS  ON  THIRD  PARTY   !  Windows  runs  lots  of  third-­‐party  code.  That  code  becomes  attack  surface  for  Microsoft   users.   !  Adobe  Reader  and  Oracle  Java  account  for  the  majority  exploits  used  to  compromise  PCs   !  Not  just  PC  software   !  Routers  in  our  datacenters   !  Firmware  in  our  devices   !  Apps  in  our  software  stores   Reference:  http://download.microsoft.com/download/5/0/3/50310CCE-­‐8AF5-­‐4FB4-­‐83E2-­‐03F1DA92F33C/Microsoft_Security_Intelligence_Report_Volume_15_English.pdf  
  • 15. WHY  THE  FOCUS  ON  THIRD  PARTY   !  Often  the  vulnerabilities  affect  Microsoft  too   !  Protocol  flaws   !  DNS   !  SSL   !  Common  coding  and  design  flaws  
  • 16. SECURING  THE  ECOSYSTEM   !  Here’s  a  short  list  of  vendors  we’ve  worked  with  at  MSVR   !  Adobe,  AOL,  Apple,  Blackberry,  CA,  Cisco,  Citibank,  Comodo,  Fidelity,  Google,   Hex-­‐Rays,  HP,  IBM,  Intel,  Intuit,  Lenovo,  Mozilla,  Nullsoft,  Nvidia,  OpenOffice,   Opera,  Oracle,  PGP,  RealNetworks,  SAP,  Symantec,  VMware,  Wireshark,   WordPress,  Yahoo!   !  ….as  well  as  many,  many  more  
  • 17. GOALS   !  Ensure  that  Microsoft  works  with  others  the  same  way  we’d  like  them  to  work   with  us   !  Coordinated  vulnerability  disclosure  so  that  Microsoft  employees  do  not  drop  0-­‐days   !  Reproducible  and  interesting  bugs   !  Good  repro  and  explanation   Reference:  http://blogs.technet.com/b/msrc/archive/2011/04/19/coordinated-­‐vulnerability-­‐disclosure-­‐from-­‐philosophy-­‐to-­‐ practice.aspx  
  • 18. GOALS   !  Help  Microsoft  finders  out   !  Make  sure  bugs  get  fixed   !  Release  advisories   !  Help  secure  the  Microsoft  ecosystem   !  Build  relationships  with  other  vendors  
  • 19. WHO  ARE  FINDERS?   !  Individual  Microsoft  employees  who  find  security  bugs  for  various  reasons   !  Hobby   !  Securing  software  they  use   !  Product  groups  working  extensively  with  a  third  party  product   !  E.g.  Office  finding  Adobe  Reader  bugs  when  testing  Word’s  Save  as  PDF  function   !  Often  many  bugs  are  discovered  at  once,  or  a  stream  of  bugs  is  generated  on  an   ongoing  basis   !  Product  groups  hitting  one-­‐off  bugs   !  It  is  not  uncommon  to  hit  a  bug  in  a  third-­‐party  component  while  just  testing   functionality  
  • 20. WHICH  VULNERABILITIES  ARE  ELIGIBLE?   !  Found  by  a  Microsoft  employee   !  Whether  found  on  own  time  or  otherwise,  using  company  resources  or  not   !  Critical  and  Important  on  SDL  Bug  Bar   !  Remote  code  execution,  server  DoS,  XSS,  SQLi,  MITM,  a  few  others   !  Affects  a  product  on  a  Microsoft  platform  or  used  in  a  Microsoft  datacenter   !  E.g.  iPhone  apps  are  not  eligible   !  These  aren’t  hard  rules  –  designed  to  ensure  high  ROI  
  • 21. MSVR  REQUIREMENTS   !  I  am  not  a  lawyer,  so  this  is  a  paraphrase  of  the  actual  policy   !  Microsoft  employees  must  use  CVD  under  all  circumstances   !  CVD:  Coordinated  Vulnerability  Disclosure  (the  new  one,  not  “responsible  disclosure”)   !  =no  0days  per  Microsoft’s  policy   !  Employees  must  notify  MSVR  of  all  vulnerabilities  they  report   !  Exception:  existing  working/support/partnership  relationships  can  continue   !  Using  MSVR  to  manage  the  process  is  optional  for  bugs  found  on  personal  time  
  • 22. BUG  BOUNTIES   !  Third-­‐party  bugs  found  outside  company  time  and  not  using  company  assets   may  be  reported  through  a  vuln  broker  using  CVD   !  The  employee  can  keep  the  money   !  This  includes  bug  bounties  too   !  Microsoft  bug  bounties   !  Online  Services   !  Mitigation  Bypass   !  Purposes:   !  Drive  thinking  in  new  areas   !  Drive  focused  community  engagement  
  • 24. STEP  1:  REPORT  VULNERABILITY  
  • 25. STEP  1  MISFIRE:  CLASSIC  0-­‐DAY   !  <insert  any  Windows  0day  full  disclosure  post  here  in  the  last  20  years>  
  • 26. STEP  2:  ENSURE  QUALITY   !  MSVR  ensures  that  all  required  elements  are  present:   !  Qualifying  bug  details   !  Proof  of  concept  file  or  solid  repro  steps   !  Description  of  issue,  including  affected  products  and  versions,  severity,  etc.   !  Stack  trace   !  Ideas  for  workarounds  or  code  fixes   !  We’ll  go  back-­‐and-­‐forth  with  finders  until  it  meets  quality  bar   !  Won’t  ship  if  it  doesn’t  
  • 27. STEP  2  MISFIRE:  NOT  A  BUG   !  When  logging  into  Windows   !  If  you  have  the  number  8  in  your  login  password,  and     !  You  have  NumLock  off  and     !  You  use  the  number  pad  when  typing  the  number  8   !  You  will  switch  focus  to  the  username  field  and  might  accidentally  type  the  rest  of  your   password  into  the  username  field  
  • 28. STEP  3:  CHECK  FOR  MICROSOFT  IMPACT   !  Does  Microsoft  have  code  that  could  be  similarly  affected?   !  Does  an  SSL  bug  affect  our  SSL  stack?   !  Does  a  browser  bug  affect  Internet  Explorer?   !  Etc.   !  If  so,  coordinate  with  third  parties  to  align  their  fix  schedule  with  ours  
  • 29. STEP  3  MISFIRE:  WE  0-­‐DAY  OURSELVES   !  Microsoft  researchers:  Online  ad  networks’  payment  processing  can  be   theoretically  exploited  for  fraud!   !  Just  like  Bing’s   !  Researchers:  “We  thought  it  would  be  okay  because  we  didn’t  mention  Bing”  
  • 30. STEP  4:  REPORT  VULNERABILITY   !  Find  the  vendor’s  security  contact  point  (email,  web  form,  etc)  if  we  don’t   already  have  it   !  If  they  don’t  have  one,  we  try  harder  ☺   !  Tell  them  we  have  a  vulnerability  to  report  and  request  PGP  or  S/MIME  key   !  Perhaps  explain  to  them  what  PGP  is…   !  Encrypt  and  send  details  
  • 31. STEP  4  MISFIRE:  SALES  PURGATORY     !  Vendor:  What’s  your  customer  ID?   !  Microsoft:  We  don’t  have  a  customer  ID,  we  found  a  security  problem  with  your   website.   !  Vendor:  Oh,  well  with  no  customer  ID  we  can’t  help  you.  Would  you  like  to  buy   our  product?   !  Microsoft:  We  don’t  want  help  or  to  buy  your  product.  We’re  trying  to  help  you.   !  Vendor:  Thank  you  for  contacting  Vendor.  Your  email  is  very  important  to  us.  
  • 32. STEP  5:  MONITOR   !  Follow  up  with  company  and  internal  finder  to  track  their  fix  through  release   !  Resolve  questions  about  repro  and  severity   !  Vendor  may  send  a  private,  fixed  version  for  the  finder  to  confirm  the  bug  is   fixed   !  Keep  all  parties  up  to  date  with  plans  for  updates,  blog  post,  conference   presentations,  etc.  
  • 33. STEP  5  MISFIRE:  SURPRISE!   !  Oh  that  bug?  We  patched  that  six  months  ago.  
  • 34. STEP  6:  SHIP  UPDATE   !  Vendor  releases  update   !  Implore  them  to  credit  our  researcher   !  If  they  “forget”,  we’ll  ping  them  and  recommend  it  again  ☺  
  • 35. STEP  6  MISFIRE:  NO  CREDIT   !  Vendor:  Here’s  the  fix!  <no  credit  to  finder>   !  Finder:  Hey!  
  • 36. STEP  7:  MSVR  ADVISORY   !  Released  when  we  think  a  bug  particularly  merits  Microsoft  customers’  attention   !  Optional   !  Not  all  vulnerabilities  get  advisories   !  Released  with  or  (typically)  after  the  vendor  releases  a  patch   !  In  case  of  active  attacks,  we  could  release  one  proactively,  but  we  have  yet  to  do  so   !  Purpose  is  to  notify  our  customers  of  the  patch  and  remind  them  to  install  it   !  Finder  always  has  the  option  to  release  their  own  advisory  in  coordination  with   MSVR  once  vendor  has  patched  
  • 37.
  • 38. STEP  7B:  MSVR  CREDITS   !  When  we  don’t  do  a  full  advisory,  still  provide  internal  finders  credit  
  • 40. CASE  STUDY:  LIBAVCODEC   !  MSVR12-­‐017   !  Vulnerabilities  in  FFmpeg  Libavcodec  Could  Allow  Arbitrary  Code  Execution   !  Fuzzing  VLC  with  WMA  files..  Boom   !  But  it’s  obviously  easier  to  find  a  crash  than  to  figure  out  what  caused  it   Reference:  http://technet.microsoft.com/en-­‐us/security/msvr/msvr12-­‐017  
  • 41. CASE  STUDY:  LIBAVCODEC   !  !Exploitable  says  a  WriteAV  at  libavcodec_plugin.dll   !  Looks  like  this  isn’t  a  bug  in  VLC,  but  in  the  included  A/V  codec   !  Let’s  diff  to  see  what  the  fuzzer  changed  in  the  template  to  make  our  repro  file!  
  • 43. CASE  STUDY:  LIBAVCODEC   !  We  can  see  that  the  0x0001  was  changed  to  0x0007   !  But  what  is  that  word  value  anyways?   !  And  how  do  I  already  know  it’s  a  word?  
  • 44. CASE  STUDY:  LIBAVCODEC   !  Meet  OffVis   !  “The  Microsoft  Office  Visualization  Tool  (OffVis)  allows  IT  professionals,  security   researchers  and  malware  protection  vendors  to  better  understand  the  Microsoft  Office   binary  file  format  in  order  to  deconstruct  .doc-­‐,  .xls-­‐  and  .ppt-­‐based  targeted  attacks”   !  Free  public  version  available  on  the  Microsoft  download  website   !  But  it’s  not  actually  specifically  for  office  documents.  OffVis  uses  GUT  templates,  which   is  the  same  concept  as  010  editor  binary  templates:  describing  file  formats  in  order  to   parse  and  edit  such  files  smarter.   Reference:  http://www.microsoft.com/en-­‐us/download/details.aspx?id=2096  
  • 46. CASE  STUDY:  LIBAVCODEC   !  So  we  know  a  few  more  things  now!   !  ASF  is  the  container  format  for  WMA  files   !  A  quick  search  for  “Number  of  Channels”  in  the  ASF  specification  tells  us   !  It’s  a  16-­‐bit  value   !  It’s  a  member  of  the  WAVEFORMATEX  structure   !  It’s  the  “number  of  audio  channels”  for  this  content   !  Manual  testing  shows  that  changing  the  value  from  0x0003  -­‐  0x0008  causes  a  crash   !  Also  noteworthy,  changing  it  to  0x0009  results  in  VLC  displaying  an  error  dialog  about  how   VLC  does  not  support  the  WMA2  file  format   Reference:  http://msdn.microsoft.com/en-­‐us/library/bb643323.aspx  
  • 47. CASE  STUDY:  LIBAVCODEC   !  Now  take  a  look  at  the  couple  of  instructions  before  the  crash   !  pop  ebx   !  call  dword  ptr[ebx+30h]   !  Anyone  else  smiling?  ☺   !  For  those  not  immediately  enlightened,  this  is  very  promising  for  exploitation   !  As  long  as  we  have  some  kind  of  influence  or  control  over  the  ebx  register   !  And  there’s  a  pop  before  the  call..  well,  the  stack  is  our  friend  
  • 48. CASE  STUDY:  LIBAVCODEC   !  We’ve  got  our  original  and  repro  files,  quick  write-­‐up  and  ready  to  share  with   msvr@microsoft.com   !  They  packaged  up  the  deliverables  and  sent  them  off  to  the  vendor   !  Handled  coordination   !  Status  updates   !  Questions  from  the  vendor  
  • 49. CASE  STUDY:  LIBAVCODEC   !  The  vulnerability  was  patched  in  May,  2012  and  the  advisory  was  released  a  few   months  later  
  • 51. CASE  STUDY:  VMWARE   !  MSVR13-­‐002   !  Vulnerabilities  in  VMware  OVF  Tool  Could  Allow  Arbitrary  Code  Execution   !  Step  1:  What  file  types  does  VMware  handle?   !  VMX   !  VMDK   !  OVF   !  …more   Reference:  http://technet.microsoft.com/en-­‐us/security/msvr/msvr13-­‐002  
  • 52. CASE  STUDY:  VMWARE   !  Step  2:  What  is  OVF?   !  Open  Virtual  Machine  Format   !  “an  open,  secure,  portable,  efficient  and  extensible  format  for  the  packing  and   distribution  of  (collections  of)  virtual  machines”   Reference:  http://www.vmware.com/pdf/ovf_whitepaper_specification.pdf  
  • 53. CASE  STUDY:  VMWARE   !  TL;DR–  It’s  a  xml-­‐based  file  format  for  describing  virtual  machine  data   !  And  since  XML  implies  describing  and  consuming  untrusted  data..  probably  a  worthy   target  
  • 54. CASE  STUDY:  VMWARE   !  Step  3:  How  does  VMware  load  OVF  files?   !  Upon  loading  a  OVF  file,  it  executes  ovftool.exe   !  Nearly  the  same  as  having  the  OVF  parsing  code  in  VMware  player  
  • 55. CASE  STUDY:  VMWARE   Step  4:  What  is  OVFTool?  
  • 56. CASE  STUDY:  VMWARE   Step  5:  Find  a  interesting  crash  or  other  unexpected  behavior   <?xml  version="1.0"  encoding="utf-­‐8"?>   <ovf:Envelope  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"   xmlns:ovf="%p.%p.%p.%p.%p.%p.%p.%p"  xmlns:vssd="http://schemas.dmtf.org/wbem/ wscim/1/cim-­‐schema/2/CIM_VirtualSystemSettingData"     …   </ovf:Envelope>    
  • 57. CASE  STUDY:  VMWARE   And  when  we  load  the  OVF  file  in  VMware..  
  • 59. CASE  STUDY:  BLACKBERRY  PTG   !  Submitted  as,  “Blackberry  Print  To  Go  Auth  Bypass”   !  But  what  can  we  gain  from  this  bug?   !  What  is  Blackberry  PTG?   !  Allows  you  to  “print”  documents  from  your  computer  to  your  BlackBerry  Playbook   tablet   !  E.g.  Install  the  software  on  your  PC  and  you  can  send  anything  you  can  print  as  a  PDF  to   your  Playbook  
  • 61. CASE  STUDY:  BLACKBERRY  PTG   !  In  order  to  send  documents  to  the  Playbook,  the  user  must  do  the  following   !  Log  into  the  service  using  your  BlackBerry  ID  (user/pass)   !  Encrypt  the  documents  using  a  password  generated  from  the  PTG  app  on  the  Playbook   !  Find  the  device  using  the  it’s  PIN   !  We  can  bypass  this  locally   !  Therefore  we  won’t  need  to  login  to  Blackberry  to  perhaps  “print”  documents  to  a   device  
  • 63. CASE  STUDY:  BLACKBERRY  PTG   !  There’s  something  listening  on  port  1234..  interesting   !  With  the  BB  login  dialog  open,  start  a  web  browser  and  simply  point  it  to  this   URL   !  http://localhost:1234/myserverlet/   !  The  login  dialog  will  immediately  continue  to  the  next  page   !  Therefore  bypassing  authentication  
  • 64. CASE  STUDY:  BLACKBERRY  PTG   !  Theory   !  The  login  procedure  checks  if  it  receives  data  on  listening  port  1234,  not  the  data’s   validity  (at  least  well  enough)  
  • 68. CASE  STUDY:  BLACKBERRY  PTG   !  So  what  could  one  gain  from  bypassing  this  login  page?   !  There  wasn’t  a  Playbook  tablet  to  completely  test  the  exploit  scenarios   !  We  handed  the  report  to  BlackBerry  security  with  our  ideas  so  they  could  test  internally   !  BB  concluded  that  while  this  was  undesirable  behavior,  it  wasn’t  a  security  issue   !  “Printing  does  not  succeed  as  the  Connector  does  not  have  the  BlackBerry  ID  account   info  and  token  needed  for  printing”   !  Without  a  Playbook  on  hand,  it  was  tough  to  test  this  remaining  step   !  We  didn’t  know  if  it  would  succeed  or  not  with  a  real  device  connected   !  Better  to  submit  anyways  so  they  could  confirm  with  us  
  • 69. LESSONS  LEARNED   !  Vendors  range  greatly  in  their  capacity   !  Which  is  not  necessarily  correlated  with  size   !  Some  small  development  teams  are  very  responsive,  others  are  not   !  Some  big  companies  have  effective  and  established  procedures,  others  mire  you  in   bureaucracy  
  • 70. LESSONS  LEARNED   !  Setting  limits  is  important   !  Pen-­‐testing  the  web  and  dumped  hundreds  of  bugs  on  us  for  most  for  relatively   unimportant  sites  doesn’t  scale  too  well   !  Finders  may  report  low-­‐severity  bugs  that  they  think  are  very  serious   !  Employees  like  this  program!  
  • 71. WHY  YOU  SHOULD  RUN  YOUR  OWN  MSVR   !  Give  employees  a  standard,  end-­‐to-­‐end  process  for  getting  security  bugs  fixed   !  Inter-­‐company  bug  reporting  can  be  more  coordinated  and  efficient   !  Relatively  cheap  to  run,  with  high  ROI   !  Boost  employee  morale   !  Secure  the  ecosystem,  as  your  product  likely  depends  on  *something*   !  Eg.  HackerOne  bug  bounty  program  has  a  bounty  for  “The  Internet”  
  • 72. WHAT  WE'D  LIKE  TO  SEE  WHEN  REPORTING   VULNERABILITIES   !  Clearly  identified  point  of  contact   !  Public  encryption  key  (PGP  or  S/MIME)   !  Direct  line  to  a  real  person  who  understands  security   !  Don't  turn  us  away  because  we  don't  have  a  support  contract!  
  • 73. WHAT  WE'D  LIKE  TO  SEE  WHEN  REPORTING   VULNERABILITIES   ! Clear  communication   !  Acknowledgment  receipt  of  the  initial  email   !  Repro,  including  affected  platforms   !  Update  release  dates,  including  any  delays   !  How  we  will  be  credited  (ask  us  for  our  preference!)   !  Closure   !  Variant  investigation   !  Relatively  prompt  fixes  
  • 76. ©2014  Microsoft  Corporation.  All  Rights  Reserved.   This  document  is  provided  "as-­‐is."  Information  and  views  expressed  in  this   document,  including  URL  and  other  Internet  Web  site  references,  may  change   without  notice.  You  bear  the  risk  of  using  it.  Some  examples  are  for  illustration   only  and  are  fictitious.  No  real  association  is  intended  or  inferred.  This  document   does  not  provide  you  with  any  legal  rights  to  any  intellectual  property  owned  by   Microsoft.  You  may  copy  and  use  this  document  for  your  internal,  reference   purposes.  

Editor's Notes

  1. If you happen to work at a company that produces lots of different products, you may not only being looking for bugs in your own code, but also in other vendor’s products as well I’ll show you how it’s possible to have a coordinated approach to getting bugs fixed outside your company, which is especially valuable if your platform supports or relies on them
  2. High level of what we’re doing now David is working on new ways to handle authentication that don’t depend on humans generating and remembering text for their security
  3. MSVR is a program within Microsoft that handles bugs in non-Microsoft software Bugs are usually found and submitted by security researchers at Microsoft across the divisions and this program coordinates fixes and advisories with the third-party vendors
  4. MSVR is a program within Microsoft that handles bugs in non-Microsoft software Bugs are usually found and submitted by security researchers at Microsoft across the divisions and this program coordinates fixes and advisories with the third-party vendors
  5. More on this later
  6. Reference for Reader+Java remark = SIR
  7. Example: Subtle bug in BIND DNS Server that could affect Microsoft DNS Server
  8. Reference: “Microsoft Vulnerability Research: Playing Well with Others Since 2009”
  9. This is not about trying to force companies or researchers to work with us, but rather make sure we also live up to Microsoft’s standards and work to make everyone involved happy
  10. Not complete but gives you a picture of the circumstances in which we tend to find vulnerabilities
  11. Key point: it is okay to use company resources and tools to find vulnerabilities on company time, as long as you also do your job Bugs that are below the bar still have some requirements (see later slide) but MSVR doesn’t have resources to help report them.
  12. CVD ensures the vendor is notified and given a reasonable amount of time to fix CVD requirement is actually in our employee handbook
  13. CVD ensures the vendor is notified and given a reasonable amount of time to fix CVD requirement is actually in our employee handbook
  14. Also logged in a tracking database Or send a mail to msvr@Microsoft
  15. Qualifying bug = high enough severity, Microsoft platform We don’t want to waste others’ time with incorrect or nonspecific reports If the bug is a design flaw, maybe you have an idea to design it better
  16. Human error doesn’t really qualify here
  17. Hypothetical example
  18. Lots of legwork here
  19. Optional for MSVR The finder always has an option to release their own content too, as long as the vendor has patched The idea here is to attract attention to noteworthy vulnerabilities that may not otherwise attract it. E.g. we may not need to do an advisory for an Adobe issue because it’s something everyone already knows about (unless it’s under attack), nor an advisory for an XSS flaw where there’s no user action, but might do one for a vuln in a common piece of software that isn’t often patched.
  20. There’s a tension between wanting to avoid warning the world when the danger isn’t that high, while still wanting to provide credit to your people. Having two advisory forms lets us do both.
  21. http://technet.microsoft.com/en-us/security/msvr/msvr12-017
  22. http://technet.microsoft.com/en-us/security/msvr/msvr12-017
  23. http://technet.microsoft.com/en-us/security/msvr/msvr12-017
  24. http://technet.microsoft.com/en-us/security/msvr/msvr12-017
  25. http://technet.microsoft.com/en-us/security/msvr/msvr12-017 This is one of the tools we use in MMPC (Microsoft Malware Protection Center) to analyze and visualize file formats
  26. http://technet.microsoft.com/en-us/security/msvr/msvr12-017
  27. http://technet.microsoft.com/en-us/security/msvr/msvr13-002
  28. http://technet.microsoft.com/en-us/security/msvr/msvr13-002
  29. http://technet.microsoft.com/en-us/security/msvr/msvr13-002
  30. http://technet.microsoft.com/en-us/security/msvr/msvr13-002
  31. Imports and exports OVF files
  32. Partial paste of PoC adjusted from a fuzzer-mutated OVF file The xmlsns:ovf envelope property is malformed; instead of pointing to the ovf schema url, it’s full of %p’s, which when interrupted by a function that takes format specifies, will print values as pointers
  33. http://technet.microsoft.com/en-us/security/msvr/msvr12-017
  34. Enter a random pin/password number here
  35. We didn’t have a BB Playbook to test
  36. Their team likely has access to internal knowledge about BB products, so they could see further than we could on if this was an issue or not Thanks BlackBerry Security team!
  37. Why use your own program instead of brokers? Maybe your company has some great resources you can utilize to make bug hunting more interesting and efficient If we all do this it’s good for everyone. Even if we don’t all do it, it’s still good just for you.
  38. We understand complex software and know which fixes should and should not take a long time
  39. We understand complex software and know which fixes should and should not take a long time