Skip to main content

Traceability of Executable Codes Using Neural Networks

  • Conference paper
Information Security (ISC 2010)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 6531))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Thompson, K.: Reflections on trusting trust. ACM Commun. 27(8), 761–763 (1984)

    Article  Google Scholar 

  2. McDonald, J.: Delphi falls prey, http://www.symantec.com/connect/blogs/delphi-falls-prey (last accessed October 2009)

  3. 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)

    Google Scholar 

  4. 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)

    Google Scholar 

  5. Hatton, L.: Estimating source lines of code from object code. In: Windows and Embedded Control Systems (2005), http://www.leshatton.org/Documents/LOC2005.pdf

  6. Buttle, D.L.: Verification of Compiled Code. PhD thesis, University of York, UK (2001)

    Google Scholar 

  7. Wang, Z., Pierce, K., McFarling, S.: Bmat - a binary matching tool for stale profile propagation. The Journal of Instruction-Level Parallelism (2002)

    Google Scholar 

  8. 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)

    Google Scholar 

  9. Oh, J.: Fight against 1-day exploits: Diffing binaries vs anti-diffing binaries. In: Blackhat Technical Security Conference (2009)

    Google Scholar 

  10. Zhenga, J.: A digital image encryption algorithm based on hyper-chaotic cellular neural network. Journal Fundamenta Informaticae (2009)

    Google Scholar 

  11. 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)

    Google Scholar 

  12. Zhenga, J.: Predicting software reliability with neural network ensembles. Expert Systems with Applications (36), 2116–2122 (2007)

    Google Scholar 

  13. 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)

    Google Scholar 

  14. 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)

    Google Scholar 

  15. 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)

    Google Scholar 

  16. IdaPro: Ida pro - disassembler, http://www.hex-rays.com/idapro/ (last accessed January 2010)

  17. Poznyakoff, S.: Gnu cflow, http://savannah.gnu.org/projects/cflow (last accessed January 2010)

  18. Ciocoiu, I.B.: Hybrid feedforward neural networks for solving classification problems. Neural Processing Letters 16(1), 81–91 (2002)

    Article  MATH  Google Scholar 

  19. 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)

    Google Scholar 

  20. Haykin, S.: Neural Networks: A Comprehensive Foundation. Prentice Hall, Englewood Cliffs (1998)

    MATH  Google Scholar 

  21. Hertz, J.A., Krogh, A.S., Palmer, R.G.: Introduction to the Theory of Neural Computation. Addison-Wesley, Redwood City (1991)

    Google Scholar 

  22. Moler, C.B.: MATLAB — an interactive matrix laboratory. Technical Report 369, University of New Mexico. Dept. of Computer Science (1980)

    Google Scholar 

  23. Burkard, J.: C software, http://people.sc.fsu.edu/burkardt/ (last accessed January 2010)

  24. Oliveira Cruz, A.J.: C software, http://equipe.nce.ufrj.br/adriano/c/exemplos.htm (last accessed January 2010)

  25. Microsystems, S.: Virtualbox, http://www.virtualbox.org (last accessed January 2010)

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics