skip to main content
research-article
Open Access
Artifacts Evaluated & Functional / v1.1

Static detection of silent misconfigurations with deep interaction analysis

Published:15 October 2021Publication History
Skip Abstract Section

Abstract

The behavior of large systems is guided by their configurations: users set parameters in the configuration file to dictate which corresponding part of the system code is executed. However, it is often the case that, although some parameters are set in the configuration file, they do not influence the system runtime behavior, thus failing to meet the user’s intent. Moreover, such misconfigurations rarely lead to an error message or raising an exception. We introduce the notion of silent misconfigurations which are prohibitively hard to identify due to (1) lack of feedback and (2) complex interactions between configurations and code.

This paper presents ConfigX, the first tool for the detection of silent misconfigurations. The main challenge is to understand the complex interactions between configurations and the code that they affected. Our goal is to derive a specification describing non-trivial interactions between the configuration parameters that lead to silent misconfigurations. To this end, ConfigX uses static analysis to determine which parts of the system code are associated with configuration parameters. ConfigX then infers the connections between configuration parameters by analyzing their associated code blocks. We design customized control- and data-flow analysis to derive a specification of configurations. Additionally, we conduct reachability analysis to eliminate spurious rules to reduce false positives. Upon evaluation on five real-world datasets across three widely-used systems, Apache, vsftpd, and PostgreSQL, ConfigX detected more than 2200 silent misconfigurations. We additionally conducted a user study where we ran ConfigX on misconfigurations reported on user forums by real-world users. ConfigX easily detected issues and suggested repairs for those misconfigurations. Our solutions were accepted and confirmed in the interaction with the users, who originally posted the problems.

Skip Supplemental Material Section

Supplemental Material

Auxiliary Presentation Video

This is a presentation video of my talk at OOPSLA 2021 on our paper accepted in the research track. This paper presents ConfigX, the first tool for the detection of silent misconfigurations. Our goal is to derive a specification describing non-trivial interactions between the configuration parameters that lead to silent misconfigurations. We design customized control- and data-flow analysis to derive a specification of configurations. Additionally, we conduct reachability analysis to eliminate spurious rules. Upon evaluation on five real-world datasets across three widely-used systems, Apache, vsftpd, and PostgreSQL, ConfigX detected more than 2200 silent misconfigurations. We additionally conducted a user study where we ran ConfigX on misconfigurations reported on user forums by real-world users. ConfigX detected issues and suggested repairs for those misconfigurations. Our solutions were accepted and confirmed in the interaction with the users, who originally posted the problems.

References

  1. 2012. Silent misconfiguration: Advanced Ordering. https://stackoverflow.com/questions/9943042/htaccess-order-deny-allow-denyGoogle ScholarGoogle Scholar
  2. 2014. Microsoft service outage on November 20th, 2014. https://www.datacenterknowledge.com/archives/2014/11/20/microsoft-says-config-change-caused-azure-outageGoogle ScholarGoogle Scholar
  3. 2014. Silent misconfiguration: Implicit Overwrite. https://stackoverflow.com/questions/21338450/conditional-request-not-honored-in-includesGoogle ScholarGoogle Scholar
  4. 2017. Amazon service outage on February 28th, 2017. https://aws.amazon.com/message/41926Google ScholarGoogle Scholar
  5. 2018. Google service outage on July 17th, 2018. https://status.cloud.google.com/incident/cloud-networking/18012Google ScholarGoogle Scholar
  6. 2021. Apache. https://httpd.apache.orgGoogle ScholarGoogle Scholar
  7. 2021. Apache User Manual. https://httpd.apache.org/docs/Google ScholarGoogle Scholar
  8. 2021. PostgreSQL. https://www.postgresql.orgGoogle ScholarGoogle Scholar
  9. 2021. Server Fault. https://serverfault.comGoogle ScholarGoogle Scholar
  10. 2021. Stack Overflow. https://stackoverflow.comGoogle ScholarGoogle Scholar
  11. 2021. vsftpd. https://security.appspot.com/vsftpd.htmlgGoogle ScholarGoogle Scholar
  12. Mona Attariyan, Michael Chow, and Jason Flinn. 2012. X-ray: Automating root-cause diagnosis of performance anomalies in production software. In [10th]OSDIUSENIX Symposium on Operating Systems Design and Implementation.Google ScholarGoogle Scholar
  13. Mona Attariyan and Jason Flinn. 2010. Automating configuration troubleshooting with dynamic information flow analysis. In [9th]OSDIUSENIX Symposium on Operating Systems Design and Implementation.Google ScholarGoogle Scholar
  14. Lujo Bauer, Scott Garriss, and Michael K. Reiter. 2011. Detecting and Resolving Policy Misconfigurations in Access-Control Systems. ACM Transactions on Information and System Security (TISSEC), 14, 1 (2011), May, 1–28.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Malik Bouchet, Byron Cook, Bryant Cutler, Anna Druzkina, Andrew Gacek, Liana Hadarean, Ranjit Jhala, Brad Marshall, Daniel Peebles, Neha Rungta, Cole Schlesinger, Chriss Stephens, Carsten Varming, and Andy Warfield. 2020. Block public access: trust safety verification of access control policies. In ESEC/FSE ’20: 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Virtual Event, USA, November 8-13, 2020, Prem Devanbu, Myra B. Cohen, and Thomas Zimmermann (Eds.). ACM, 281–291. https://doi.org/10.1145/3368089.3409728 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Qingrong Chen, Teng Wang, Owolabi Legunsen, Shanshan Li, and Tianyin Xu. 2020. Understanding and Discovering Software Configuration Dependencies in Cloud and Datacenter Systems. In In Proceedings of the 2020 ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE’20). Virtual Event.Google ScholarGoogle Scholar
  17. Runxiang Cheng, Lingming Zhang, Darko Marinov, and Tianyin Xu. 2021. Test-Case Prioritization for Configuration Testing. In Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA’21).Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Tathagata Das, Ranjita Bhagwan, and Prasad Naldurg. 2010. Baaz: A System for Detecting Access Control Misconfigurations. In Proceedings of the 19th USENIX Security Symposium.Google ScholarGoogle Scholar
  19. Leonardo de Moura and Nikolaj Bjørner. 2008. Z3: An Efficient SMT Solver. In Tools and Algorithms for the Construction and Analysis of Systems, C. R. Ramakrishnan and Jakob Rehof (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 337–340. isbn:978-3-540-78800-3Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Zhen Dong, Artur Andrzejak, and Kun Shao. 2015. Practical and Accurate Pinpointing of Configuration Errors using Static Analysis. In Proceedings of the 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME’15). Bremen, Germany.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Patrick Franz, Thorsten Berger, Ibrahim Fayaz, Sarah Nadi, and Evgeny Groshev. 2020. ConfigFix: Interactive Configuration Conflict Resolution for the Linux Kernel. CoRR, abs/2012.15342 (2020), arxiv:2012.15342. arxiv:2012.15342Google ScholarGoogle Scholar
  22. Weili Fu, Roly Perera, Paul Anderson, and James Cheney. 2017. muPuppet: A Declarative Subset of the Puppet Configuration Language. In 31st European Conference on Object-Oriented Programming, ECOOP 2017, June 19-23, 2017, Barcelona, Spain, Peter Müller (Ed.) (LIPIcs, Vol. 74). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 12:1–12:27. https://doi.org/10.4230/LIPIcs.ECOOP.2017.12 Google ScholarGoogle ScholarCross RefCross Ref
  23. Herodotos Herodotou, Harold Lim, Gang Luo, Nedyalko Borisov, Liang Dong, Fatma Bilgen Cetin, and Shivnath Babu. 2011. Towards Automatic Optimization of MapReduce Programs.Google ScholarGoogle Scholar
  24. Yigong Hu, Gongqi Huang, and Peng Huang. 2020. Automated Reasoning and Detection of Specious Configuration in Large Systems with Symbolic Execution. In 14th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2020, Virtual Event, November 4-6, 2020. USENIX Association, 719–734. https://www.usenix.org/conference/osdi20/presentation/huGoogle ScholarGoogle Scholar
  25. Peng Huang, William J. Bolosky, Abhishek Singh, and Yuanyuan Zhou. 2015. ConfValley: A systematic configuration validation framework for cloud services. In [10th]EuroSysEuropean Conference on Computer Systems.Google ScholarGoogle Scholar
  26. Pooyan Jamshidi, Norbert Siegmund, Miguel Velez, Christian Kästner, Akshay Patel, and Yuvraj Agarwal. 2017. Transfer learning for performance modeling of configurable systems: an exploratory analysis. In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, ASE 2017, Urbana, IL, USA, October 30 - November 03, 2017, Grigore Rosu, Massimiliano Di Penta, and Tien N. Nguyen (Eds.). IEEE Computer Society, 497–508. https://doi.org/10.1109/ASE.2017.8115661 Google ScholarGoogle ScholarCross RefCross Ref
  27. Pooyan Jamshidi, Miguel Velez, Christian Kästner, and Norbert Siegmund. 2018. Learning to sample: exploiting similarities across environments to learn performance models for configurable systems. In Proceedings of the 2018 ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/SIGSOFT FSE 2018, Lake Buena Vista, FL, USA, November 04-09, 2018, Gary T. Leavens, Alessandro Garcia, and Corina S. Pasareanu (Eds.). ACM, 71–82. https://doi.org/10.1145/3236024.3236074 Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Hsuan-Chi Kuo, Jianyan Chen, Sibin Mohan, and Tianyin Xu. 2020. Set the Configuration for the Heart of the OS: On the Practicality of Operating System Kernel Debloating. In Proceedings of the 2020 ACM SIGMETRICS Conference (SIGMETRICS’20).Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. C. Lattner and V. Adve. 2004. LLVM: a compilation framework for lifelong program analysis transformation. In International Symposium on Code Generation and Optimization, 2004. CGO 2004.. 75–86. issn:null https://doi.org/10.1109/CGO.2004.1281665 Google ScholarGoogle ScholarCross RefCross Ref
  30. Chi Li, Shu Wang, Henry Hoffmann, and Shan Lu. 2020. Statically Inferring Performance Properties of Software Configurations. In Proceedings of the Fifteenth European Conference on Computer Systems (EuroSys ’20). Association for Computing Machinery, New York, NY, USA. Article 10, 16 pages. isbn:9781450368827 https://doi.org/10.1145/3342195.3387520 Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Max Lillack, Christian Kästner, and Eric Bodden. 2014. Tracking load-time configuration options. In ACM/IEEE International Conference on Automated Software Engineering, ASE ’14, Vasteras, Sweden - September 15 - 19, 2014, Ivica Crnkovic, Marsha Chechik, and Paul Grünbacher (Eds.). ACM, 445–456. https://doi.org/10.1145/2642937.2643001 Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Max Lillack, Christian Kästner, and Eric Bodden. 2018. Tracking Load-time Configuration Options. IEEE Transactions on Software Engineering (TSE), 44, 12 (2018), Dec., 1269–1291.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Justin Mason. 2011. Against The Use Of Programming Languages in Configuration Files. http://taint.org/2011/02/18/001527a.htmlGoogle ScholarGoogle Scholar
  34. Flávio Medeiros, Márcio Ribeiro, Rohit Gheyi, Larissa Braz, Christian Kästner, Sven Apel, and Kleber Santos. 2020. An Empirical Study on Configuration-Related Code Weaknesses. In SBES ’20: 34th Brazilian Symposium on Software Engineering, Natal, Brazil, October 19-23, 2020, Everton Cavalcante, Francisco Dantas, and Thaís Batista (Eds.). ACM, 193–202. https://doi.org/10.1145/3422392.3422409 Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Sonu Mehta, Ranjita Bhagwan, Rahul Kumar, B. Ashok, Chetan Bansal, Chandra Maddila, Christian Bird, Sumit Asthana, and Aditya Kumar. 2020. Rex: Preventing Bugs and Misconfiguration in Large Services using Correlated Change Analysis. In Proceedings of the 17th USENIX Symposium on Networked Systems Design and Implementation (NSDI’20).Google ScholarGoogle Scholar
  36. Jens Meinicke, Chu-Pan Wong, Bogdan Vasilescu, and Christian Kästner. 2020. Exploring Differences and Commonalities between Feature Flags and Configuration Options. In ICSE SEIP.Google ScholarGoogle Scholar
  37. Robert Tappan Morris, Eddie Kohler, John Jannotti, and M. Frans Kaashoek. 1999. The Click modular router. In Proceedings of the 17th ACM Symposium on Operating System Principles, SOSP 1999, Kiawah Island Resort, near Charleston, South Carolina, USA, December 12-15, 1999, David Kotz and John Wilkes (Eds.). ACM, 217–231. https://doi.org/10.1145/319151.319166 Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Sarah Nadi, Thorsten Berger, Christian Kästner, and Krzysztof Czarnecki. 2014. Mining configuration constraints: static analyses and empirical results. In 36th International Conference on Software Engineering, ICSE ’14, Hyderabad, India - May 31 - June 07, 2014, Pankaj Jalote, Lionel C. Briand, and André van der Hoek (Eds.). ACM, 140–151. https://doi.org/10.1145/2568225.2568283 Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. S. Nadi, T. Berger, C. Kastner, and K. Czarnecki. 2015. Where Do Configuration Constraints Stem From? An Extraction Approach and an Empirical Study. IEEE Transactions on Software Engineering, 41, 8 (2015), 820–841.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Vivek Nair, Rahul Krishna, Tim Menzies, and Pooyan Jamshidi. 2018. Transfer Learning with Bellwethers to find Good Configurations. CoRR, abs/1803.03900 (2018), arxiv:1803.03900. arxiv:1803.03900Google ScholarGoogle Scholar
  41. Rahul Potharaju, Joseph Chan, Luhui Hu, Cristina Nita-Rotaru, Mingshi Wang, Liyuan Zhang, and Navendu Jain. 2015. ConfSeer: Leveraging Customer Support Knowledge Bases for Automated Misconfiguration Detection. In Proceedings of the 35th International Conference on Very Large Data Bases (VLDB’15).Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Ariel Rabkin and Randy Katz. 2011. Static Extraction of Program Configuration Options. In Proceedings of the 33rd International Conference on Software Engineering (ICSE’11).Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Ariel Rabkin and Randy H. Katz. 2011. Precomputing possible configuration error diagnoses. In 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011), Lawrence, KS, USA, November 6-10, 2011, Perry Alexander, Corina S. Pasareanu, and John G. Hosking (Eds.). IEEE Computer Society, 193–202. https://doi.org/10.1109/ASE.2011.6100053 Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Mark Santolucito, Ennan Zhai, Rahul Dhodapkar, Aaron Shim, and Ruzica Piskac. 2017. Synthesizing configuration file specifications with association rule learning. PACMPL, 1, OOPSLA (2017), 64:1–64:20. https://doi.org/10.1145/3133888 Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Mark Santolucito, Ennan Zhai, and Ruzica Piskac. 2016. Probabilistic Automated Language Learning for Configuration Files. In [28th]CAVComputer Aided Verification.Google ScholarGoogle Scholar
  46. Rian Shambaugh, Aaron Weiss, and Arjun Guha. 2016. Rehearsal: a configuration verification tool for puppet. In Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2016, Santa Barbara, CA, USA, June 13-17, 2016, Chandra Krintz and Emery Berger (Eds.). ACM, 416–430. https://doi.org/10.1145/2908080.2908083 Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Tushar Sharma, Marios Fragkoulis, and Diomidis Spinellis. 2016. Does your configuration code smell? In Proceedings of the 13th International Conference on Mining Software Repositories, MSR 2016, Austin, TX, USA, May 14-22, 2016, Miryung Kim, Romain Robbes, and Christian Bird (Eds.). ACM, 189–200. https://doi.org/10.1145/2901739.2901761 Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Todd Spangler. 2019. Facebook Apologizes for Outages, Says It Has Resolved “Server Configuration” Error. https://variety.com/2019/digital/news/facebook-apologizes-outages-server-configuration-error-1203163429/##!/Google ScholarGoogle Scholar
  49. StackOverflow '43239190. 2017. Apache mod rewrite rule not working. https://stackoverflow.com/questions/43239190Google ScholarGoogle Scholar
  50. StackOverflow '6070335. 2011. Retain original request URL on mod_proxy redirect. https://stackoverflow.com/questions/6070335Google ScholarGoogle Scholar
  51. Ya-Yunn Su, Mona Attariyan, and Jason Flinn. 2007. AutoBash: Improving configuration management with operating systems. In [21st]SOSPACM Symposium on Operating Systems Principles.Google ScholarGoogle Scholar
  52. Xudong Sun, Runxiang Cheng, Jianyan Chen, Elaine Ang, Owolabi Legunsen, and Tianyin Xu. 2020. Testing Configuration Changes in Context to Prevent Production Failures. In Proceedings of the 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI’20). Virtual Event.Google ScholarGoogle Scholar
  53. Alan Tang, Siva Kesava Reddy Kakarla, Ryan Beckett, Ennan Zhai, Matt Brown, Todd D. Millstein, Yuval Tamir, and George Varghese. 2021. Campion: debugging router configuration differences. In SIGCOMMACM SIGCOMM.Google ScholarGoogle Scholar
  54. Reinhard Tartler, Christian Dietrich, Julio Sincero, Wolfgang Schröder-Preikschat, and Daniel Lohmann. 2014. Static Analysis of Variability in System Software: The 90,000 #ifdefs Issue. In Proceedings of the 2014 USENIX Conference on USENIX Annual Technical Conference (USENIX ATC’14). USENIX Association, USA. isbn:9781931971102Google ScholarGoogle Scholar
  55. Bingchuan Tian, Xinyi Zhang, Ennan Zhai, Hongqiang Harry Liu, Qiaobo Ye, Chunsheng Wang, Xin Wu, Zhiming Ji, Yihong Sang, Ming Zhang, Da Yu, Chen Tian, Haitao Zheng, and Ben Y. Zhao. 2019. Safely and automatically updating in-network ACL configurations with Intent language. In SIGCOMMACM SIGCOMM.Google ScholarGoogle Scholar
  56. Dana Van Aken, Andrew Pavlo, Geoffrey J. Gordon, and Bohan Zhang. 2017. Automatic Database Management System Tuning Through Large-Scale Machine Learning. SIGMOD ’17. Association for Computing Machinery, New York, NY, USA. isbn:9781450341974 https://doi.org/10.1145/3035918.3064029 Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Helen J. Wang, John C. Platt, Yu Chen, Ruyun Zhang, and Yi-Min Wang. 2004. Automatic Misconfiguration Troubleshooting with PeerPressure. In Proceedings of the 6th USENIX Conference on Operating Systems Design and Implementation (OSDI’04).Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Yi-Min Wang, Chad Verbowski, John Dunagan, Yu Chen, Helen J. Wang, Chun Yuan, and Zheng Zhang. 2003. STRIDER: A Black-box, State-based Approach to Change and Configuration Management and Support. In Proceedings of the 17th Large Installation Systems Administration Conference (LISA’03).Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Aaron Weiss, Arjun Guha, and Yuriy Brun. 2017. Tortoise: interactive system configuration repair. In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, ASE 2017, Urbana, IL, USA, October 30 - November 03, 2017, Grigore Rosu, Massimiliano Di Penta, and Tien N. Nguyen (Eds.). IEEE Computer Society, 625–636. https://doi.org/10.1109/ASE.2017.8115673 Google ScholarGoogle ScholarCross RefCross Ref
  60. Chengcheng Xiang, Haochen Huang, Andrew Yoo, Yuanyuan Zhou, and Shankar Pasupathy. 2020. PracExtractor: Extracting Configuration Good Practices from Manuals to Detect Server Misconfigurations. In 2020 USENIX Annual Technical Conference, USENIX ATC 2020, July 15-17, 2020, Ada Gavrilovska and Erez Zadok (Eds.). USENIX Association, 265–280. https://www.usenix.org/conference/atc20/presentation/xiangGoogle ScholarGoogle Scholar
  61. Chengcheng Xiang, Yudong Wu, Bingyu Shen, Mingyao Shen, Haochen Huang, Tianyin Xu, Yuanyuan Zhou, Cindy Moore, Xinxin Jin, and Tianwei Sheng. 2019. Towards Continuous Access Control Validation and Forensics. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security (CCS’19).Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Tianyin Xu. 2017. Misconfiguration dataset. https://github.com/tianyin/configuration_datasetsGoogle ScholarGoogle Scholar
  63. Tianyin Xu, Long Jin, Xuepeng Fan, Yuanyuan Zhou, Shankar Pasupathy, and Rukma Talwadker. 2015. Hey, you have given me too many knobs!: understanding and dealing with over-designed configuration in system software. In [10th]ESEC/FSEJoint Meeting on Foundations of Software Engineering.Google ScholarGoogle Scholar
  64. Tianyin Xu, Xinxin Jin, Peng Huang, Yuanyuan Zhou, Shan Lu, Long Jin, and Shankar Pasupathy. 2016. Early detection of configuration errors to reduce failure damage. In [12th]OSDIUSENIX Symposium on Operating Systems Design and Implementation.Google ScholarGoogle Scholar
  65. Tianyin Xu and Owolabi Legunsen. 2020. Configuration Testing: Testing Configuration Values as Code and with Code. CoRR, abs/1905.12195 (2020), arxiv:1905.12195. arxiv:1905.12195Google ScholarGoogle Scholar
  66. Tianyin Xu, Vineet Pandey, and Scott Klemmer. 2016. An HCI View of Configuration Problems. arXiv:1601.01747, Jan..Google ScholarGoogle Scholar
  67. Tianyin Xu, Jiaqi Zhang, Peng Huang, Jing Zheng, Tianwei Sheng, Ding Yuan, Yuanyuan Zhou, and Shankar Pasupathy. 2013. Do not blame users for misconfigurations. In [24th]SOSPACM Symposium on Operating Systems Principles.Google ScholarGoogle Scholar
  68. Tianyin Xu and Yuanyuan Zhou. 2015. Systems approaches to tackling configuration errors: A survey. ACM Comput. Surv., 47, 4 (2015), 70.Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Fangdan Ye, Da Yu, Ennan Zhai, Hongqiang Harry Liu, Bingchuan Tian, Qiaobo Ye, Chunsheng Wang, Xin Wu, Tianchen Guo, Cheng Jin, Duncheng She, Qing Ma, Biao Cheng, Hui Xu, Ming Zhang, Zhiliang Wang, and Rodrigo Fonseca. 2020. Accuracy, Scalability, Coverage: A Practical Configuration Verifier on a Global WAN. In SIGCOMMACM SIGCOMM.Google ScholarGoogle Scholar
  70. Zuoning Yin, Xiao Ma, Jing Zheng, Yuanyuan Zhou, Lakshmi N. Bairavasundaram, and Shankar Pasupathy. 2011. An empirical study on configuration errors in commercial and open source systems. In [23rd]SOSPACM Symposium on Operating Systems Principles.Google ScholarGoogle Scholar
  71. Chun Yuan, Ni Lao, Ji-Rong Wen, Jiwei Li, Zheng Zhang, Yi-Min Wang, and Wei-Ying Ma. 2006. Automated Known Problem Diagnosis with Event Traces. In Proceedings of the 1st ACM European Conference on Computer Systems (EuroSys’06).Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. Ding Yuan, Yinglian Xie, Rina Panigrahy, Junfeng Yang, Chad Verbowski, and Arunvijay Kumar. 2011. Context-based online configuration-error detection. In USENIX ATCUSENIX Annual Technical Conference.Google ScholarGoogle Scholar
  73. Ennan Zhai, Ang Chen, Ruzica Piskac, Mahesh Balakrishnan, Bingchuan Tian, Bo Song, and Haoliang Zhang. 2020. Check before You Change: Preventing Correlated Failures in Service Updates. In [17th]NSDIUSENIX Symposium on Networked Systems Design and Implementation.Google ScholarGoogle Scholar
  74. Jiaqi Zhang, Lakshminarayanan Renganarayana, Xiaolan Zhang, Niyu Ge, Vasanth Bala, Tianyin Xu, and Yuanyuan Zhou. 2014. EnCore: Exploiting system environment and correlation information for misconfiguration detection. In ASPLOSArchitectural Support for Programming Languages and Operating Systems.Google ScholarGoogle Scholar
  75. Sai Zhang and Michael D. Ernst. 2013. Automated Diagnosis of Software Configuration Errors. In Proceedings of the 35th International Conference on Software Engineering (ICSE’13).Google ScholarGoogle ScholarDigital LibraryDigital Library
  76. Yuanliang Zhang, Haochen He, Owolabi Legunsen, Shanshan Li, Wei Dong, and Tianyin Xu. 2021. An Evolutionary Study of Configuration Design and Implementation in Cloud Systems. In In Proceedings of the 43rd International Conference on Software Engineering (ICSE’21).Google ScholarGoogle Scholar

Index Terms

  1. Static detection of silent misconfigurations with deep interaction analysis

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!