Padmanabhan Krishnan

dblp:02/2100 · DBLP profile ↗
← Back
35ranked-venue papers
19as first author
3since 2021 · last 2023
0000-0002-5905-8499ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 21 · 7 first-author · 2 since 2021Theory of computation · 8 · 7 first-authorSecurity and privacy · 3 · 2 first-author · 1 since 2021Applied, interdisciplinary, general and emerging computing · 3 · 2 first-author · 1 since 2021Human-computer interaction and ubiquitous computing · 2 · 1 first-author
YearPublicationVenuePosition
2023 The role of program analysis in security vulnerability detection: Then and now
Cristina Cifuentes, François Gauthier 0001, Behnaz Hassanshahi, Padmanabhan Krishnan, Davin McCall
Comput. Secur.4
2022 Synthesis of Java Deserialisation Filters from Examples
abstract
Java natively supports serialisation and deserialisation, features that are necessary to enable distributed systems to exchange Java objects. Deserialisation of data from malicious sources can lead to security exploits including remote code execution because by default Java does not validate deserialised data. In the absence of validation, a carefully crafted payload can trigger arbitrary functionality. The state-of-the-art general mitigation strategy for deserialisation exploits in Java is deserialisation filtering that validates the contents of an object input stream before the object is deserialised using user-provided filters. In this paper we describe a novel technique called ds-prefix for automatic synthesis of deserialisation filters (as regular expressions) from examples. We focus on synthesis of allowlists (permitted behaviours) as they provide a better level of security. ds-prefix is based on deserialisation heuristics and specifically targets synthesis of deserialisation allowlists. We evaluate our approach by executing ds-prefix on popular open-source systems and show that ds-prefix can produce filters preventing real CVEs using a small number of training examples. We also compare our approach with other synthesis tools which demonstrates that ds-prefix outperforms existing tools and achieves better F1-score.
Kostyantyn Vorobyov, François Gauthier 0001, Sora Bae, Padmanabhan Krishnan, Rebecca O'Donoghue
COMPSAC4
2021 MoScan: a model-based vulnerability scanner for web single sign-on services
abstract
Various third-party single sign-on (SSO) services (e.g., Facebook Login and Twitter Login) are widely deployed by web applications to facilitate their authentication and authorization processes. Nevertheless, integrating these services in a secure manner remains challenging, such that security issues are continually reported in recent years. In this work, we develop MoScan, a model-based scanner that can be used by software testers and security analysts for detecting and reporting security vulnerabilities in SSO implementations. MoScan takes as input a state machine built based on an SSO standard and our empirical study to represent participants' states and transitions during the login process. In the testing process, it analyzes network traces captured during the execution of SSO services, and increments the state machine which is then used to generate payloads to test the protocol participants. We evaluate MoScan with 23 real-world websites which integrate the Facebook SSO service to test its capability of identifying security vulnerabilities. To show the adaptability of MoScan's state machine, we also test it on Twitter and LinkedIn’s SSO services, and Github's authentication plugin in Jenkins. It detects three known weaknesses and one new logic fault from them, showing a new perspective in testing stateful protocol implementations like SSO services. Our demonstration and the source code of MoScan are available at https://github.com/baigd/moscan.
Hanlin Wei, Behnaz Hassanshahi, Guangdong Bai, Padmanabhan Krishnan, Kostyantyn Vorobyov
ISSTA4
2020 Trade-offs in managing risk and technical debt in industrial research labs: an experience report
abstract
Nowadays, industrial research labs operate like startups. In a relatively short amount of time, researchers are expected not only to explore innovative ideas but also show how the new ideas can add value to the organisation. One way to do this, especially when developing tools, is to construct usable prototypes. When the technology underlying the research tool is highly complex or niche, like program analysis, field trials with potential users also help explaining and demonstrating the benefits of the tool. Getting support from potential users helps demonstrate value to the organisation, which in turn justifies conducting more extensive research and investing more resources to enhance the initial prototype.
François Gauthier 0001, Alexander Jordan, Padmanabhan Krishnan, Behnaz Hassanshahi, Jörn Guy Süß, Sora Bae, Hyunjun Lee
TechDebt@ICSE3
2017 Improving the Scalability of Automatic Linearizability Checking in SPIN
Patrick Doolan, Graeme Smith 0001, Chenyi Zhang 0001, Padmanabhan Krishnan
ICFEM4
2016 A low-overhead, value-tracking approach to information flow security
Kostyantyn Vorobyov, Padmanabhan Krishnan, Phil Stocks
Inf. Softw. Technol.2
2015 Staged Points-to Analysis for Large Code Bases
Nicholas Allen, Bernhard Scholz, Padmanabhan Krishnan
CC3
2015 Enforcement of privacy requirements
Padmanabhan Krishnan, Kostyantyn Vorobyov
Comput. Secur.1
2014 A Method for Scalable and Precise Bug Finding Using Program Analysis and Model Checking
Manuel Valdiviezo, Cristina Cifuentes, Padmanabhan Krishnan
APLAS3
2013 A Dynamic Approach to Locating Memory Leaks
Kostyantyn Vorobyov, Padmanabhan Krishnan, Phil Stocks
ICTSS2
2013 Enforcement of Privacy Requirements
Padmanabhan Krishnan, Kostyantyn Vorobyov
SEC1
2013 Guest editorial to the special section on SEFM 2009
Padmanabhan Krishnan, Dang Van Hung, Antonio Cerone
Softw. Syst. Model.1
2012 Combining Static Analysis and Constraint Solving for Automatic Test Case Generation
abstract
We present an approach in automatic test generation that combines features of static analysis and bounded symbolic computation that is capable of producing a test suite that can be used to declare a program under test safe within bounds. We first use the results produced by static analysis which will identify a list of potential errors in the program. We restrict our search to the locations where errors can exist and aim to find exactly one test case per real bug. We have built a prototype tool (called Batg) that implements our approach. We report the results of running it on a number of benchmarks from well known benchmarking suites. We compare Batgto KLEE (an automatic test generation framework) and CBMC(a bounded model checker). This comparison is based on the time taken by the tools, the number of bugs found and the number of generated test cases. We analyse the results of our experiment, demonstrating the benefits of our approach.
Kostyantyn Vorobyov, Padmanabhan Krishnan
ICST2
2012 A Low-Overhead, Value-Tracking Approach to Information Flow Security
Kostyantyn Vorobyov, Padmanabhan Krishnan, Phil Stocks
SEFM2
2010 Adding Service Engineering and Management to a Software Engineering Program
abstract
This paper describes the rationale and an incremental approach to introduce a new curriculum in the area of service management and engineering. This is done in the context of an existing software engineering and information system program. So the total cost of the new curriculum is not high. The approach, with relatively low start-up costs, is suitable for small departments. As with any new programme or degree there is a problem of getting the concepts known in the marketplace. The School of IT in initiating this programme is actively working with several organizations to promote the ideas to potential employees and students.
Gavin R. Finnie, Padmanabhan Krishnan
CSEE&T2
2009 Industry Academia Collaboration: An Experience Report at a Small University
abstract
This paper is a report on how sustainable and fruitful cooperation was achieved between a small university department and an industry partner. It outlines the range and type of activities that need tube undertaken over a longer than normal duration. It also describes the expectations from the industry partner for the cooperation to be successful.
Padmanabhan Krishnan, Kelvin J. Ross, Percy Antonio Pari Salas
CSEE&T1
2008 Testing Privacy Policies Using Models
abstract
Privacy policies are usually expressed at a high level using languages such as P3P, EPAL, which are independent of applications. To check if a system satisfies a privacy policy requires to link it with the behaviour of the system and its environment. We propose a framework which is based on models to support the automation of testing if a software system meets a policy. In our framework, policies and system's behaviour are expressed using formal models. These formal models are then combined and used to derive test cases. The main advantage of this approach is the automation of the testing process. We demonstrateits applicability via two examples..
Percy Antonio Pari Salas, Padmanabhan Krishnan
SEFM2
2006 Verifying BPEL Workflows Under Authorisation Constraints
Xiangpeng Zhao, Antonio Cerone, Padmanabhan Krishnan
Business Process Management3
2005 Enabling Security Testing from Specification to Code
Shane Bracher, Padmanabhan Krishnan
IFM2
2004 Decomposing Controllers into Non-conflicting Distributed Controllers
Padmanabhan Krishnan
ICTAC1
2004 Independent examination of software: an experiment
Padmanabhan Krishnan
Inf. Softw. Technol.1
2003 Automatic synthesis of a subclass of schedulers in timed systems
Padmanabhan Krishnan
Theor. Comput. Sci.1
2002 Providing Assistance for Proofs in the Teaching of Theory of Computation
abstract
In this article we present a technique which helps students in understanding proofs in the context of automata theory. The main conclusion is that student understanding can be improved by using a collection of lemmas and trying to automate the proof in a mechanical theorem prover.
Padmanabhan Krishnan
ICCE1
2001 Decomposing Timed Push Down Automata
Padmanabhan Krishnan
Fundam. Informaticae1
2000 Consistency checks for UML
abstract
In this article, we present an approach to defining UML diagrams in terms of state predicates and using the theorem prover PVS (Prototype Verification System) to verify consistency between various diagrams. We focus on the dynamic aspects of the various diagrams. Our approach can easily handle partially specified systems as the behaviour is described in terms of the history of the computation.
Padmanabhan Krishnan
APSEC1
1996 Architectural CCS
abstract
Abstract In this article, we discuss the effect of architectures on behaviours and the notions of equivalence for CCS terms. Two types of architectures are considered viz, shared memory systems and distributed memory systems. Processes can be logically migrated in shared memory systems while in distributed memory systems, processes are bound to a location and require explicit migration. Communication in shared memory systems can follow the CCS principle. A complete equational characterisation of the bisimulation equivalence induced by the execution on multiprocessors requires an extended syntax; which captures the process of compiling and loading. To permit a realistic description of communication in distributed systems, asynchronous actions are required. Due to this the complete axiomatisation for the bisimulation equivalence is more sensitive to the causal structure of the processes. A practical interpretation to the complete axiomatisation of the bisimulation equivalence is also given.
Padmanabhan Krishnan
Formal Aspects Comput.1
1995 Deriving distributed processes from concurrent processes
Padmanabhan Krishnan
Inf. Softw. Technol.1
1994 Formal methods and design extraction: a pilot study
Padmanabhan Krishnan
Inf. Softw. Technol.1
1994 A Semantic Characterisation for Faults in Replicated Systems
Padmanabhan Krishnan
Theor. Comput. Sci.1
1993 Specification of systems with interrupts
Padmanabhan Krishnan
J. Syst. Softw.1
1992 A Semantics for Multiprocessor Systems
Padmanabhan Krishnan
ESOP1
1991 Distributed CCS
Padmanabhan Krishnan
CONCUR1
1991 A Model for Real-Time Systems
Padmanabhan Krishnan
MFCS1
1989 A Distributed Real-Time Language and Its Operational Semantics
abstract
An important issue in real-time computing is the development of a sufficiently abstract computational model. This model must enable one to specify, analyze, and implement distributed real-time systems. Therefore, there must also be a programming language based on the model. A description is given of such a programming language and its operational semantics. In the design of the language the applicative paradigm is extended to permit specification of parallelism, distribution, and time and temporal constraints. The language has constructs that use ideas from temporal logic and polymorphism to specify timing constraints. It uses the concept of events and a declarative event-handling style to represent communication and asynchrony. The formal model described is an operational semantics for the language and is based on dynamic algebras. The initial structure of the abstract machine for the language is described, and examples of transition rules are presented.>
Padmanabhan Krishnan, Richard A. Volz
RTSS1
1989 Translation and Execution of Distributed Ada Programs: Is It Still Ada?
abstract
Some of the fundamental issues and tradeoffs involved in the translation and execution of programs written in the Ada language and intended for distributed execution are examined. The memory access architecture, binding time and degree of system homogeneity are the three basic characteristics in terms of which target systems can be described. Library subprograms and library packages are identified as natural distributable units of the language. The program-to-process/memory mapping and the unit of the language to be distributed are the key issues in the distribution of Ada. The implications of various alternatives for these are analyzed.>
Richard A. Volz, Trevor N. Mudge, Gregory D. Buzzard, Padmanabhan Krishnan
IEEE Trans. Software Eng.4