Abstract
Security tools like Firewalls, IDS, IPS, SIEM, EDR, and NDR effectively detect and block threats. However, these tools depend on the system, application, and event logs. Logs are the key ingredient for various purposes, including troubleshooting performance issues, satisfying compliance mandates, and monitoring and improving security. In addition, logs from multiple machines are collected and fed to the Security Information and Event Management (SIEM) system for further security analysis. Therefore, a SIEM system’s efficiency and effectiveness depend heavily on the quality and quantity of logs provided. Unfortunately, logs are often targeted brutally and tampered with after a successful intrusion to cover the attack’s traces. Thus it becomes critical to protect the confidentiality, integrity, availability, and authenticity of logs at rest or transit. This paper proposes a novel scheme to prevent logs from tampering, detect any tampering, and recuperate logs if lost or corrupt. Our scheme is forward-secure, replicated, randomized, and rate-less, aiming to help securely store and transmit logs to SIEM.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Allen, J., et al.: Mnemosyne: an effective and efficient postmortem watering hole attack investigation system. In: Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security, CCS 2020, pp. 787–802. Association for Computing Machinery, New York (2020). https://doi.org/10.1145/3372297.3423355
Apache Log4j 2. https://logging.apache.org/log4j/2.x/
Bellare, M., Yee, B.: Forward integrity for secure audit logs. Technical report, Citeseer (1997)
Bellare, M., Yee, B.: Forward-security in private-key cryptography. In: Joye, M. (ed.) CT-RSA 2003. LNCS, vol. 2612, pp. 1–18. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-36563-X_1
Blass, E.O., Noubir, G.: Secure logging with crash tolerance. In: 2017 IEEE Conference on Communications and Network Security (CNS), pp. 1–10 (2017). https://doi.org/10.1109/CNS.2017.8228649
Blass, E.O., Noubir, G.: Forward integrity and crash recovery for secure logs. Cryptology ePrint Archive, Report 2019/506 (2019). https://ia.cr/2019/506
Bowers, K.D., Hart, C., Juels, A., Triandopoulos, N.: PillarBox: combating next-generation malware with fast forward-secure logging. In: Stavrou, A., Bos, H., Portokalidis, G. (eds.) RAID 2014. LNCS, vol. 8688, pp. 46–67. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11379-1_3
Buyukkayhan, A.S., Oprea, A., Li, Z., Robertson, W.: Lens on the endpoint: hunting for malicious software through endpoint data analysis. In: Dacier, M., Bailey, M., Polychronakis, M., Antonakakis, M. (eds.) RAID 2017. LNCS, vol. 10453, pp. 73–97. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66332-6_4
CVE-2011-0343. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-0343
CVE-2011-1951. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-1951
CVE-2014-3683. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-3683
Devharsh: GitHub - devharsh/VaultBox: VaultBox is a static C++ library for secure storage and transmission. https://github.com/devharsh/VaultBox
Fisher yates shuffle algorithm. https://www.ahtcloud.com/fisher-yates-shuffle-algorithm
Fisher, R.A., Yates, F.: Statistical tables for biological, agricultural and medical research, 6th edn. https://hdl.handle.net/2440/10701
Goodrich, M.T., Mitzenmacher, M.: Invertible bloom lookup tables. In: 2011 49th Annual Allerton Conference on Communication, Control, and Computing (Allerton), pp. 792–799 (2011). https://doi.org/10.1109/Allerton.2011.6120248
Hartung, G.: Secure audit logs with verifiable excerpts. In: Sako, K. (ed.) CT-RSA 2016. LNCS, vol. 9610, pp. 183–199. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-29485-8_11
Hassan, W.U., Bates, A., Marino, D.: Tactical provenance analysis for endpoint detection and response systems. In: 2020 IEEE Symposium on Security and Privacy (SP), pp. 1172–1189 (2020). https://doi.org/10.1109/SP40000.2020.00096
Holt, J.E.: Logcrypt: forward security and public verification for secure audit logs. In: Proceedings of the 2006 Australasian Workshops on Grid Computing and E-Research, ACSW Frontiers 2006, vol. 54, pp. 203–211. Australian Computer Society Inc, AUS (2006)
Homoliak, I., Szalachowski, P.: Aquareum: a centralized ledger enhanced with blockchain and trusted computing (2020)
Intel®optane\(^{\rm TM}\) dc persistent memory: A major advance in memory and storage architecture. https://www.intel.com/content/www/us/en/developer/articles/technical/optane-dc-persistent-memory-a-major-advance-in-memory-and-storage-architecture.html
Juels, A., Kelley, J., Tamassia, R., Triandopoulos, N.: Falcon codes: fast, authenticated LT codes (or: making rapid tornadoes unstoppable). In: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, CCS 2015, pp. 1032–1047. Association for Computing Machinery, New York (2015). https://doi.org/10.1145/2810103.2813728
Karande, V., Bauman, E., Lin, Z., Khan, L.: SGX-log: securing system logs with SGX. In: Proceedings of the 2017 ACM on Asia Conference on Computer and Communications Security, ASIA CCS 2017, pp. 19–30. Association for Computing Machinery, New York (2017). https://doi.org/10.1145/3052973.3053034
Kwon, Y., Wang, W., Jung, J., Lee, K.H., Perdisci, R.: C2SR: cybercrime scene reconstruction for post-mortem forensic analysis. In: Proceedings 2021 Network and Distributed System Security Symposium (2021)
Ma, D.: Practical forward secure sequential aggregate signatures. In: Proceedings of the 2008 ACM Symposium on Information, Computer and Communications Security, ASIACCS 2008, pp. 341–352. Association for Computing Machinery, New York (2008). https://doi.org/10.1145/1368310.1368361
Ma, D., Tsudik, G.: A new approach to secure logging. ACM Trans. Storage 5(1) (2009). https://doi.org/10.1145/1502777.1502779
Marson, G.A., Poettering, B.: Even more practical secure logging: tree-based seekable sequential key generators. In: Kutyłowski, M., Vaidya, J. (eds.) ESORICS 2014. LNCS, vol. 8713, pp. 37–54. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11212-1_3
Memory RAS technologies for HPE proliant/synergy/blade gen10 servers with intel xeon scalable processors. https://psnow.ext.hpe.com/doc?id=4aa4-3490enw.pdf
Michael, N., Mink, J., Liu, J., Gaur, S., Hassan, W.U., Bates, A.: On the forensic validity of approximated audit logs. In: Annual Computer Security Applications Conference, ACSAC 2020, pp. 189–202. Association for Computing Machinery, New York (2020). https://doi.org/10.1145/3427228.3427272
Noura, H.N., Salman, O., Chehab, A., Couturier, R.: Distlog: a distributed logging scheme for IoT forensics. Ad Hoc Netw. 98, 102061 (2020). https://doi.org/10.1016/j.adhoc.2019.102061. https://www.sciencedirect.com/science/article/pii/S1570870519306997
OpenSSL: GitHub - OpenSSL/OpenSSL: TLS/SSL and crypto library. https://github.com/openssl/openssl
OSSEC. https://www.ossec.net/
Paccagnella, R., et al.: Custos: practical tamper-evident auditing of operating systems using trusted execution. In: NDSS (2020)
Paccagnella, R., Liao, K., Tian, D., Bates, A.: Logging to the danger zone: race condition attacks and defenses on system audit frameworks. In: Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security, CCS 2020, pp. 1551–1574. Association for Computing Machinery, New York (2020). https://doi.org/10.1145/3372297.3417862
Persistent memory. https://www.micron.com/campaigns/persistent-memory
Pontarelli, S., Reviriego, P., Mitzenmacher, M.: Improving the performance of invertible bloom lookup tables. Inf. Process. Lett. 114(4), 185–191 (2014). https://doi.org/10.1016/j.ipl.2013.11.015. https://www.sciencedirect.com/science/article/pii/S0020019013002950
Quantum-safe cryptography. https://cryptobook.nakov.com/quantum-safe-cryptography
Schneier, B., Kelsey, J.: Cryptographic support for secure logs on untrusted machines. In: 7th USENIX Security Symposium (USENIX Security 1998), San Antonio, TX. USENIX Association (1998). https://www.usenix.org/conference/7th-usenix-security-symposium/cryptographic-support-secure-logs-untrusted-machines
Schneier, B., Kelsey, J.: Secure audit logs to support computer forensics. ACM Trans. Inf. Syst. Secur. 2(2), 159–176 (1999). https://doi.org/10.1145/317087.317089
Shepherd, C., Akram, R.N., Markantonakis, K.: EmLog: tamper-resistant system logging for constrained devices with TEEs. In: Hancke, G.P., Damiani, E. (eds.) WISTP 2017. LNCS, vol. 10741, pp. 75–92. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-93524-9_5
Siem compliance requirements and standards. https://www.peerspot.com/articles/siem-compliance-requirements-and-standards
Sinha, A., Jia, L., England, P., Lorch, J.R.: Continuous tamper-proof logging using TPM 2.0. In: Holz, T., Ioannidis, S. (eds.) Trust 2014. LNCS, vol. 8564, pp. 19–36. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08593-7_2
Soriano-Salvador, E., Guardiola-Múzquiz, G.: Sealfs: storage-based tamper-evident logging. Comput. Secur. 108, 102325 (2021). https://doi.org/10.1016/j.cose.2021.102325. https://www.sciencedirect.com/science/article/pii/S0167404821001498
syslog-ng. https://www.syslog-ng.com/
The beats family. https://www.elastic.co/beats/
The rocket-fast syslog server. https://www.rsyslog.com/
Using siem for regulatory compliance: Importance, best practices, use cases. https://logsentinel.com/blog/using-siem-for-regulatory-compliance-importance-best-practices-use-cases/
Wang, Q., et al.: You are what you do: hunting stealthy malware via data provenance analysis. In: NDSS (2020)
Weidai: GitHub - weidai11/cryptopp: free C++ class library of cryptographic schemes. https://github.com/weidai11/cryptopp
What is ECC memory? https://www.crucial.com/products/memory/server/ecc
Yuan, X., Setayeshfar, O., Yan, H., Panage, P., Wei, X., Lee, K.H.: Droidforensics: accurate reconstruction of android attacks via multi-layer forensic logging. In: Proceedings of the 2017 ACM on Asia Conference on Computer and Communications Security, ASIA CCS 2017, pp. 666–677. Association for Computing Machinery, New York (2017). https://doi.org/10.1145/3052973.3052984
Acknowledgements
We want to thank Matthew Butler (Laurel Lye LLC) for his valuable feedback on the paper.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendices
A Security Definitions
A logging protocol is an algorithm running on a logging device \(D_i\) that receives messages from \(sender \ S\) and writes entries to its logging device \(L_i\). The log on logging device \(L_i\) is a finite but increasingly long sequence of entries. An essential part of each secure logging protocol is a verifier protocol. A verifier protocol is an algorithm run by the \(verifier \ V\) that accesses some log \(L_i,\) extracts the log entries stored on \(L_i,\) and each log entry computes whether to accept or reject the entry. The decision of the Verifier is the basis for defining security properties below. For all properties, we assume that there is a “ground truth”, i.e., a sequence \(<e_1, e_2, ...>\) of events that happened. Our scheme \(\textsf {VaultBox}\) aims to achieve the following security properties.
Definition 1 (Correctness)
A logging protocol satisfies correctness for log \(L_k\) if and only if a corresponding event actually happened for each entry in the log of \(L_k\) that the Verifier accepts. Correctness dictates that under normal operation, any sequence of messages of size at most T added to channelC by \(sender \ S\) can be correctly read by \(verifier \ V\) in an order-preserving way; in particular, the T most recent messages of C and their exact order can be determined by V. More formally, let \(<e_1,e_2,...>\) denote the event sequence that actually happened and \(<l_1,l_2,...>\) be the sequence of log entries in \(L_k\) accepted by the verifier. Then the following condition should hold:
Definition 2 (Immutability)
A logging protocol satisfies immutability for log \(L_k\) if \(\mathcal {A}\) cannot undetectably forge the messages that are contained in channel C at the time of compromise. Although \(\mathcal {A}\) takes full control of \(sender \ S, \mathcal {A}\) may only make two uses of the channel:
-
\(\mathcal {A}\) may either write in C legitimate messages in L, or
-
\(\mathcal {A}\) may destroy the delivery of chosen messages in C, but in a detectable way, since a failure message, \(\bot \) is substituted.
Definition 3 (Stealth)
A logging protocol satisfies stealth for log \(L_k\) if \(\mathcal {A}\) can learn nothing about the contents of C that is not explicitly added to it by \(\mathcal {A}\).
-
At the pre-compromise state, \(\mathcal {A}\) cannot learn anything about the contents of the channel: at all times, C itself perfectly hides its contents. Not only can messages in the channel be written such that the \(\mathcal {A}\) never learns them, but \(\mathcal {A}\) does not even learn of their existence.
-
At the point of compromise, \(\mathcal {A}\) cannot learn the messages present in the channel or even learn if such messages exist in the channel. \(\mathcal {A}\) can only learn the current slot in C, but since this index is initially randomized, it conveys no information about the usage of C thus far.
-
At the post-compromise state, \(\mathcal {A}\) completely controls all the messages added to the channel and the positions of the messages that V will fail to produce.
B Security Analysis
We briefly provide the intuition behind the above valuable properties.
Correctness. Messages are included in the buffer at a random position in order of their arrival. Under normal operation of the system, it is always possible for the receiver to replay the random coins to generate the corresponding secret keys for Authenticated Decryption and reconstruct the exact sequence of the most recent messages written in the buffer.
Immutability. Since any message added in the buffer is encrypted and verifiable through Authenticated Encryption scheme, individual messages cannot be undetectably tampered with. Additionally, since the seed to replay the random coins is generated forward-securely, messages in an individual buffer cannot be undetectably received out of order, across different buffers, or within the buffer.
Stealth. Since both individual messages and buffers are encrypted through the inner layer and outer layer Authenticated Encryption and since the buffer is of fixed size T, observing buffers before the compromise or actual buffer contents after the compromise reveals no information about the actual messages previously added in the channel or about whether messages have been ever added.
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Trivedi, D., Triandopoulos, N. (2023). VaultBox: Enhancing the Security and Effectiveness of Security Analytics. In: Yung, M., Chen, C., Meng, W. (eds) Science of Cyber Security . SciSec 2023. Lecture Notes in Computer Science, vol 14299. Springer, Cham. https://doi.org/10.1007/978-3-031-45933-7_24
Download citation
DOI: https://doi.org/10.1007/978-3-031-45933-7_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-45932-0
Online ISBN: 978-3-031-45933-7
eBook Packages: Computer ScienceComputer Science (R0)