Patents by Inventor Chad Verbowski

Chad Verbowski has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8151142
    Abstract: Apparatus and methods for intercepting and analyzing threads are disclosed. In one embodiment, a thread data recorder is configured to instrument one or more existing functions by modifying computer executable instructions in the functions to intercept threads calling the functions. In one possible implementation, the number of existing functions instrumented can be reduced by instrumenting choke point functions. The instrumented functions can also capture data associated with the threads as the threads execute at the function. This data can be saved to memory and compressed into logs. In one aspect, the data can be saved and/or compressed at a time when processor resources are being used at or below a predetermined level. The captured data can be used to analyze a functioning of a computer system in which the threads were produced.
    Type: Grant
    Filed: October 31, 2007
    Date of Patent: April 3, 2012
    Assignee: Microsoft Corporation
    Inventors: Chad Verbowski, Brad Daniels, John Dunagan, Shan Lu, Roussi Roussev, Juhan Lee, Arunvijay Kumar
  • Patent number: 8069374
    Abstract: A technique for automatically detecting and correcting configuration errors in a computing system. In a learning process, recurring event sequences, including e.g., registry access events, are identified from event logs, and corresponding rules are developed. In a detecting phase, the rules are applied to detected event sequences to identify violations and to recover from failures. Event sequences across multiple hosts can be analyzed. The recurring event sequences are identified efficiently by flattening a hierarchical sequence of the events such as is obtained from the Sequitur algorithm. A trie is generated from the recurring event sequences and edges of nodes of the trie are marked as rule edges or non-rule edges. A rule is formed from a set of nodes connected by rule edges. The rules can be updated as additional event sequences are analyzed. False positive suppression policies include a violation-consistency policy and an expected event disappearance policy.
    Type: Grant
    Filed: February 27, 2009
    Date of Patent: November 29, 2011
    Assignee: Microsoft Corporation
    Inventors: Rina Panigrahy, Chad Verbowski, Yinglian Xie, Junfeng Yang, Ding Yuan
  • Patent number: 8024815
    Abstract: In an embodiment of isolation environment-based information access, programs—including operating systems and applications—running on a computing-based device can be isolated in an environment such as a virtual machine. Information including commands and/or data transmitted between the computing-based device and the program(s) being run, as well as information associated with the program(s) and the computing-based device, is accessed without being detected by the program(s). In one implementation, the information includes state information as well as commands and/or data—including sensitive information, such as usernames and passwords. In another implementation, the information can be used to secretly access the program(s).
    Type: Grant
    Filed: September 15, 2006
    Date of Patent: September 20, 2011
    Assignee: Microsoft Corporation
    Inventors: Jacob R. Lorch, Yi-Min Wang, Chad Verbowski, Helen J. Wang, Samuel King
  • Patent number: 7865777
    Abstract: Apparatus and methods for intercepting and analyzing threads are disclosed. In one embodiment, a thread data recorder is configured to instrument one or more existing functions by modifying computer executable instructions in the functions to intercept threads calling the functions. In one possible implementation, the number of existing functions instrumented can be reduced by instrumenting choke point functions. The instrumented functions can also capture data associated with the threads as the threads execute at the function. This data can be saved to memory and compressed into logs. In one aspect, the data can be saved and/or compressed at a time when processor resources are being used at or below predetermined level. The captured data can be used to analyze a functioning of a computer system in which the threads were produced.
    Type: Grant
    Filed: October 31, 2007
    Date of Patent: January 4, 2011
    Assignee: Microsoft Corporation
    Inventors: Chad Verbowski, Brad Daniels, John Dunagan, Shan Lu, Roussi Roussev, Juhan Lee, Arunvijay Kumar
  • Publication number: 20100223499
    Abstract: A technique for automatically detecting and correcting configuration errors in a computing system. In a learning process, recurring event sequences, including e.g., registry access events, are identified from event logs, and corresponding rules are developed. In a detecting phase, the rules are applied to detected event sequences to identify violations and to recover from failures. Event sequences across multiple hosts can be analyzed. The recurring event sequences are identified efficiently by flattening a hierarchical sequence of the events such as is obtained from the Sequitur algorithm. A trie is generated from the recurring event sequences and edges of nodes of the trie are marked as rule edges or non-rule edges. A rule is formed from a set of nodes connected by rule edges. The rules can be updated as additional event sequences are analyzed. False positive suppression policies include a violation- consistency policy and an expected event disappearance policy.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: Microsoft Corporation
    Inventors: Rina Panigrahy, Chad Verbowski, Yinglian Xie, Junfeng Yang, Ding Yuan
  • Patent number: 7756987
    Abstract: An exemplary method includes providing a typographically erroneous domain name, tracing the domain name where tracing includes entering the domain name as part of a URL and recording one or more subsequent URLs, identifying a domain parking service for the domain name based at least in part on information in one of the recorded URLs, determining client identification information in at least one of the recorded URLs where the client identification information identifies a customer of the domain parking service and blocking one or more domain names based at least in part on the client identification information. Other exemplary technologies are also disclosed.
    Type: Grant
    Filed: April 4, 2007
    Date of Patent: July 13, 2010
    Assignee: Microsoft Corporation
    Inventors: Yi-Min Wang, Douglas Beck, Chad Verbowski, Bradford Daniels, Ming Ma
  • Patent number: 7716530
    Abstract: Apparatus and methods for intercepting and analyzing threads are disclosed. In one embodiment, a thread data recorder is configured to instrument one or more existing functions by modifying computer executable instructions in the functions to intercept threads calling the functions. In one possible implementation, the number of existing functions instrumented can be reduced by instrumenting choke point functions. The instrumented functions can also capture data associated with the threads as the threads execute at the function. This data can be saved to memory and compressed into logs. In one aspect, the data can be saved and/or compressed at a time when processor resources are being used at or below a predetermined level. The captured data can be used to analyze a functioning of a computer system in which the threads were produced.
    Type: Grant
    Filed: December 5, 2006
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Chad Verbowski, Brad Daniels, John Dunagan, Shan Lu, Roussi Roussev, Juhan Lee, Arunvijay Kumar
  • Patent number: 7698305
    Abstract: Systems and methods for implementing system management which are based on reviewing of the interactions between one or more programs and the persistent state they tend to represent. The system provides for detection of modifications that occur within a system, verifying whether the modifications are approved or not and generating notifications on detecting unknown modifications.
    Type: Grant
    Filed: December 1, 2006
    Date of Patent: April 13, 2010
    Assignee: Microsoft Corporation
    Inventors: Chad Verbowski, Juhan Lee, Xiaogang Liu, Roussi Roussev, Yi-Min Wang
  • Publication number: 20080250159
    Abstract: An exemplary method includes providing a typographically erroneous domain name, tracing the domain name where tracing includes entering the domain name as part of a URL and recording one or more subsequent URLs, identifying a domain parking service for the domain name based at least in part on information in one of the recorded URLs, determining client identification information in at least one of the recorded URLs where the client identification information identifies a customer of the domain parking service and blocking one or more domain names based at least in part on the client identification information. Other exemplary technologies are also disclosed.
    Type: Application
    Filed: April 4, 2007
    Publication date: October 9, 2008
    Applicant: Microsoft Corporation
    Inventors: Yi-Min Wang, Douglas Beck, Chad Verbowski, Bradford Daniels, Ming Ma
  • Publication number: 20080133972
    Abstract: Systems and methods for implementing system management which are based on reviewing of the interactions between one or more programs and the persistent state they tend to represent. The system provides for detection of modifications that occur within a system, verifying whether the modifications are approved or not and generating notifications on detecting unknown modifications.
    Type: Application
    Filed: December 1, 2006
    Publication date: June 5, 2008
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, Juhan Lee, Xiaogang Liu, Roussi Roussev, Yi-Min Wang
  • Publication number: 20080127355
    Abstract: In an embodiment of isolation environment-based information access, programs—including operating systems and applications—running on a computing-based device can be isolated in an environment such as a virtual machine. Information including commands and/or data transmitted between the computing-based device and the program(s) being run, as well as information associated with the program(s) and the computing-based device, is accessed without being detected by the program(s). In one implementation, the information includes state information as well as commands and/or data—including sensitive information, such as usernames and passwords. In another implementation, the information can be used to secretly access the program(s).
    Type: Application
    Filed: September 15, 2006
    Publication date: May 29, 2008
    Applicant: Microsoft Corporation
    Inventors: Jacob R. Lorch, Yi-Min Wang, Chad Verbowski, Helen J. Wang, Samuel King
  • Publication number: 20080066069
    Abstract: Apparatus and methods for intercepting and analyzing threads are disclosed. In one embodiment, a thread data recorder is configured to instrument one or more existing functions by modifying computer executable instructions in the functions to intercept threads calling the functions. In one possible implementation, the number of existing functions instrumented can be reduced by instrumenting choke point functions. The instrumented functions can also capture data associated with the threads as the threads execute at the function. This data can be saved to memory and compressed into logs. In one aspect, the data can be saved and/or compressed at a time when processor resources are being used at or below a predetermined level. The captured data can be used to analyze a functioning of a computer system in which the threads were produced.
    Type: Application
    Filed: October 31, 2007
    Publication date: March 13, 2008
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, Brad Daniels, John Dunagan, Shan Lu, Roussi Roussev, Juhan Lee, Arunvijay Kumar
  • Publication number: 20080059973
    Abstract: Apparatus and methods for intercepting and analyzing threads are disclosed. In one embodiment, a thread data recorder is configured to instrument one or more existing functions by modifying computer executable instructions in the functions to intercept threads calling the functions. In one possible implementation, the number of existing functions instrumented can be reduced by instrumenting choke point functions. The instrumented functions can also capture data associated with the threads as the threads execute at the function. This data can be saved to memory and compressed into logs. In one aspect, the data can be saved and/or compressed at a time when processor resources are being used at or below predetermined level. The captured data can be used to analyze a functioning of a computer system in which the threads were produced.
    Type: Application
    Filed: October 31, 2007
    Publication date: March 6, 2008
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, Brad Daniels, John Dunagan, Shan Lu, Roussi Roussev, Juhan Lee, Arunvijay Kumar
  • Publication number: 20070300103
    Abstract: A method and system for identifying a configuration parameter of a “sick” computer system that is at fault for causing an undesired behavior based on analysis of configuration parameters from other computer systems is provided. In one embodiment, a troubleshooting system collects “suspect” values for “suspect” configuration parameters used by a “sick” application when the undesired behavior was exhibited by the sick computer system. The troubleshooting system then compares the suspect values to sample values of the suspect configuration parameters retrieved from sample computer systems. The troubleshooting system uses that comparison to identify one or more suspect configuration parameters that are likely at fault for causing the application to exhibit the undesired behavior.
    Type: Application
    Filed: June 13, 2007
    Publication date: December 27, 2007
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, Jiahe Wang, John Platt, Ruyun Zhang, Yu Chen
  • Publication number: 20070220518
    Abstract: Apparatus and methods for intercepting and analyzing threads are disclosed. In one embodiment, a thread data recorder is configured to instrument one or more existing functions by modifying computer executable instructions in the functions to intercept threads calling the functions. In one possible implementation, the number of existing functions instrumented can be reduced by instrumenting choke point functions. The instrumented functions can also capture data associated with the threads as the threads execute at the function. This data can be saved to memory and compressed into logs. In one aspect, the data can be saved and/or compressed at a time when processor resources are being used at or below a predetermined level. The captured data can be used to analyze a functioning of a computer system in which the threads were produced.
    Type: Application
    Filed: December 5, 2006
    Publication date: September 20, 2007
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, Brad Daniels, John Dunagan, Shan Lu, Roussi Roussev, Juhan Lee, Arunvijay Kumar
  • Publication number: 20070168550
    Abstract: A system arid method for enabling highly scalable multi-node event distribution networks through the use of summary-based routing, particularly event distribution networks using a content-based publish/subscribe model to distribute information. By allowing event routers to use imprecise summaries of the subscriptions hosted by matcher nodes, an event router can eliminate itself as a bottleneck thus improving overall event distribution network throughput even though the use of imprecise summaries results in some false positive event traffic. False positive event traffic is reduced by using a filter set partitioning that provides for good subscription set locality at each matcher node, while at the same time avoiding overloading any one matcher node. Good subscription set locality is maintained by routing new subscriptions to a matcher node with a subscription summary that best covers the new subscription.
    Type: Application
    Filed: February 6, 2007
    Publication date: July 19, 2007
    Inventors: Yi-Min Wang, Lili Qiu, Chad Verbowski, Demetrios Achlioptas, Gautam Das, Per-Ake Larson
  • Publication number: 20070027974
    Abstract: A status notification method and facility is provided for use with a service chain processing a request for a service. The service chain can include multiple computer nodes, and the method includes dynamically creating the service chain for processing the request, and guaranteeing agreement, on at least two of the nodes of the service chain, about the status of the processing of the request. The method can also include saving detailed operational data logs in response to determining that a failure in processing the request has occurred. When a given node in the service chain determines that failure has occurred, agreement about the failure can be propagated throughout the service chain. Also, conditional logging of detailed operational data can minimize the amount of operational data transmitted over a network and saved to a data repository.
    Type: Application
    Filed: August 1, 2005
    Publication date: February 1, 2007
    Applicant: Microsoft Corporation
    Inventors: Juhan Lee, John Dunagan, Alastair Wolman, Chad Verbowski, Stephen Lovett
  • Patent number: 7162530
    Abstract: A system and method are provided for encoding data in accordance with the present invention. The system includes a first subsystem for encoding a second data protocol within a formatted data protocol without disrupting display operations associated with the first data protocol. An encapsulation sequence is provided to isolate the second data protocol from the formatted data protocol, wherein a monitoring subsystem receives status from the first subsystem via the second data protocol.
    Type: Grant
    Filed: May 7, 2004
    Date of Patent: January 9, 2007
    Assignee: Microsoft Corporation
    Inventors: Sean Selitrennikoff, Chad Verbowski, Bryan Mark Willman, Adam D Barr, Sadagopan Rajaram
  • Publication number: 20070006323
    Abstract: A technique for identifying dependencies of an application upon a given security context includes monitoring security checks generated by the application. The security checks requiring elevated rights are identified and the state of execution of the application corresponding to the identified security checks may be logged. The security checks requiring elevated rights may be identified by monitoring access checks, monitoring privilege checks, checking user/group identifiers against a list of known identifiers associated with elevated rights, or the like.
    Type: Application
    Filed: August 29, 2005
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, John Dunagan, Shuo Chen, Yi-Min Wang
  • Publication number: 20070006297
    Abstract: A technique for identifying dependencies of an application upon a given security context includes monitoring security checks generated by the application. The security checks requiring elevated rights are identified and the state of execution of the application corresponding to the identified security checks may be logged. The security checks requiring elevated rights may be identified by monitoring access checks, monitoring privilege checks, checking user/group identifiers against a list of known identifiers associated with elevated rights, or the like.
    Type: Application
    Filed: August 29, 2005
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Chad Verbowski, John Dunagan, Shuo Chen, Yi-Min Wang