Form filling based on constraint solving

We describe a system for analyzing form-based websites to discover sequences of actions and values that result in a valid form submission. Rather than looking at the text or DOM structure of the form, our method is driven by solving constraints involving the underlying client-side JavaScript code. I...

Full description

Bibliographic Details
Main Authors: Spencer, B, Benedikt, M, Senellart, P
Format: Conference item
Published: Springer 2018
_version_ 1797063869995155456
author Spencer, B
Benedikt, M
Senellart, P
author_facet Spencer, B
Benedikt, M
Senellart, P
author_sort Spencer, B
collection OXFORD
description We describe a system for analyzing form-based websites to discover sequences of actions and values that result in a valid form submission. Rather than looking at the text or DOM structure of the form, our method is driven by solving constraints involving the underlying client-side JavaScript code. In order to deal with the complexity of client-side code, we adapt a method from program analysis and testing, concolic testing, which mixes concrete code execution, symbolic code tracing, and constraint solving to find values that lead to new code paths. While concolic testing is commonly used for detecting bugs in stand-alone code with developer support, we show how it can be applied to the very different problem of filling Web forms. We evaluate our system on a benchmark of both real and synthetic Web forms.
first_indexed 2024-03-06T21:06:08Z
format Conference item
id oxford-uuid:3c857774-3912-45c6-8a5a-62fe7f30f34d
institution University of Oxford
last_indexed 2024-03-06T21:06:08Z
publishDate 2018
publisher Springer
record_format dspace
spelling oxford-uuid:3c857774-3912-45c6-8a5a-62fe7f30f34d2022-03-26T14:14:11ZForm filling based on constraint solvingConference itemhttp://purl.org/coar/resource_type/c_5794uuid:3c857774-3912-45c6-8a5a-62fe7f30f34dSymplectic Elements at OxfordSpringer2018Spencer, BBenedikt, MSenellart, PWe describe a system for analyzing form-based websites to discover sequences of actions and values that result in a valid form submission. Rather than looking at the text or DOM structure of the form, our method is driven by solving constraints involving the underlying client-side JavaScript code. In order to deal with the complexity of client-side code, we adapt a method from program analysis and testing, concolic testing, which mixes concrete code execution, symbolic code tracing, and constraint solving to find values that lead to new code paths. While concolic testing is commonly used for detecting bugs in stand-alone code with developer support, we show how it can be applied to the very different problem of filling Web forms. We evaluate our system on a benchmark of both real and synthetic Web forms.
spellingShingle Spencer, B
Benedikt, M
Senellart, P
Form filling based on constraint solving
title Form filling based on constraint solving
title_full Form filling based on constraint solving
title_fullStr Form filling based on constraint solving
title_full_unstemmed Form filling based on constraint solving
title_short Form filling based on constraint solving
title_sort form filling based on constraint solving
work_keys_str_mv AT spencerb formfillingbasedonconstraintsolving
AT benediktm formfillingbasedonconstraintsolving
AT senellartp formfillingbasedonconstraintsolving