Abstract
Traceability of codes refers to the mapping between equivalent codes written in different languages – including high-level and low-level programming languages. In the field of Legal Metrology, it is critical to guarantee that the software embedded in a meter corresponds to a version that was previously approved by the Legal Metrology Authority. In this paper, we propose a novel approach for correlating source and object codes using artificial neural networks. Our approach correlates the source code with the object code by feeding the neural network with logical flow characteristics of such codes. Any incidence of false positives is obviously a critical issue for software evaluation purposes. Our evaluation using real code examples shows a correspondence around 90% for the traceability of the executable codes with very low rate of false positives.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Thompson, K.: Reflections on trusting trust. ACM Commun. 27(8), 761–763 (1984)
McDonald, J.: Delphi falls prey, http://www.symantec.com/connect/blogs/delphi-falls-prey (last accessed October 2009)
Quinlan, D., Panas, T.: Source code and binary analysis of software defects. In: Proceedings of the 5th Annual Workshop on Cyber Security and Information Intelligence Research, CSIIRW 2009, pp. 1–4. ACM, New York (2009)
Hassan, A.E., Jiang, Z.M., Holt, R.C.: Source versus object code extraction for recovering software architecture. In: Proceedings of the 12th Working Conference on Reverse Engineering, WCRE 2005, Washington, DC, USA, pp. 67–76. IEEE Computer Society, Los Alamitos (1995)
Hatton, L.: Estimating source lines of code from object code. In: Windows and Embedded Control Systems (2005), http://www.leshatton.org/Documents/LOC2005.pdf
Buttle, D.L.: Verification of Compiled Code. PhD thesis, University of York, UK (2001)
Wang, Z., Pierce, K., McFarling, S.: Bmat - a binary matching tool for stale profile propagation. The Journal of Instruction-Level Parallelism (2002)
Flake, H.: Structural comparison of executable objects. In: Proc. of the Conference on Detection of Intrusions and Malware & Vulnerability Assessment (DIMVA). IEEE Computer Society, Los Alamitos (2004)
Oh, J.: Fight against 1-day exploits: Diffing binaries vs anti-diffing binaries. In: Blackhat Technical Security Conference (2009)
Zhenga, J.: A digital image encryption algorithm based on hyper-chaotic cellular neural network. Journal Fundamenta Informaticae (2009)
Zeng, H., Rine, D.: A neural network approach for software defects fix effort estimation. In: IASTED Conf. on Software Engineering and Applications, pp. 513–517 (2004)
Zhenga, J.: Predicting software reliability with neural network ensembles. Expert Systems with Applications (36), 2116–2122 (2007)
Reddy, C.S., Raju, K.V.S.V.N., Kumari, V.V., Devi, G.L.: Fault-prone module prediction of a web application using artificial neural networks. In: Proceeding (591) Software Engineering and Applications (2007)
Lenic, M., Povalej, P., Kokol, P., Cardoso, A.I.: Using cellular automata to predict reliability of modules. In: Proceeding (436) Software Engineering and Applications (2004)
Moretti, E., Chanteperdrix, G., Osorio, A.: New algorithms for control-flow graph structuring. In: Proceedings of the Fifth European Conference on Software Maintenance and Reengineering, CSMR 2001, Washington, DC, USA, p. 184. IEEE Computer Society, Los Alamitos (2001)
IdaPro: Ida pro - disassembler, http://www.hex-rays.com/idapro/ (last accessed January 2010)
Poznyakoff, S.: Gnu cflow, http://savannah.gnu.org/projects/cflow (last accessed January 2010)
Ciocoiu, I.B.: Hybrid feedforward neural networks for solving classification problems. Neural Processing Letters 16(1), 81–91 (2002)
Asadi, R., Mustapha, N., Sulaiman, N.: New supervisioned multi layer feed forward neural network model to accelerate classification with high accuracy. European Journal of Scientific Research 33(1), 163–178 (2009)
Haykin, S.: Neural Networks: A Comprehensive Foundation. Prentice Hall, Englewood Cliffs (1998)
Hertz, J.A., Krogh, A.S., Palmer, R.G.: Introduction to the Theory of Neural Computation. Addison-Wesley, Redwood City (1991)
Moler, C.B.: MATLAB — an interactive matrix laboratory. Technical Report 369, University of New Mexico. Dept. of Computer Science (1980)
Burkard, J.: C software, http://people.sc.fsu.edu/burkardt/ (last accessed January 2010)
Oliveira Cruz, A.J.: C software, http://equipe.nce.ufrj.br/adriano/c/exemplos.htm (last accessed January 2010)
Microsystems, S.: Virtualbox, http://www.virtualbox.org (last accessed January 2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Boccardo, D.R., Nascimento, T.M., Machado, R.C., Prado, C.B., Carmo, L.F.R.C. (2011). Traceability of Executable Codes Using Neural Networks. In: Burmester, M., Tsudik, G., Magliveras, S., Ilić, I. (eds) Information Security. ISC 2010. Lecture Notes in Computer Science, vol 6531. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-18178-8_21
Download citation
DOI: https://doi.org/10.1007/978-3-642-18178-8_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-18177-1
Online ISBN: 978-3-642-18178-8
eBook Packages: Computer ScienceComputer Science (R0)