Machine-Learning-Guided Selectively Unsound Static Analysis
We present a machine-learning-based technique for selectively applying unsoundness in static analysis. Existing bug-finding static analyzers are unsound in order to be precise and scalable in practice. However, they are uniformly unsound and hence at the risk of missing a large amount of real bugs....
Uložené v:
| Vydané v: | Proceedings / International Conference on Software Engineering s. 519 - 529 |
|---|---|
| Hlavní autori: | , , |
| Médium: | Konferenčný príspevok.. |
| Jazyk: | English |
| Vydavateľské údaje: |
IEEE
01.05.2017
|
| Predmet: | |
| ISSN: | 1558-1225 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | We present a machine-learning-based technique for selectively applying unsoundness in static analysis. Existing bug-finding static analyzers are unsound in order to be precise and scalable in practice. However, they are uniformly unsound and hence at the risk of missing a large amount of real bugs. By being sound, we can improve the detectability of the analyzer but it often suffers from a large number of false alarms. Our approach aims to strike a balance between these two approaches by selectively allowing unsoundness only when it is likely to reduce false alarms, while retaining true alarms. We use an anomaly-detection technique to learn such harmless unsoundness. We implemented our technique in two static analyzers for full C. One is for a taint analysis for detecting format-string vulnerabilities, and the other is for an interval analysis for buffer-overflow detection. The experimental results show that our approach significantly improves the recall of the original unsound analysis without sacrificing the precision. |
|---|---|
| AbstractList | We present a machine-learning-based technique for selectively applying unsoundness in static analysis. Existing bug-finding static analyzers are unsound in order to be precise and scalable in practice. However, they are uniformly unsound and hence at the risk of missing a large amount of real bugs. By being sound, we can improve the detectability of the analyzer but it often suffers from a large number of false alarms. Our approach aims to strike a balance between these two approaches by selectively allowing unsoundness only when it is likely to reduce false alarms, while retaining true alarms. We use an anomaly-detection technique to learn such harmless unsoundness. We implemented our technique in two static analyzers for full C. One is for a taint analysis for detecting format-string vulnerabilities, and the other is for an interval analysis for buffer-overflow detection. The experimental results show that our approach significantly improves the recall of the original unsound analysis without sacrificing the precision. |
| Author | Kwangkeun Yi Oh, Hakjoo Kihong Heo |
| Author_xml | – sequence: 1 surname: Kihong Heo fullname: Kihong Heo organization: Seoul Nat. Univ., Seoul, South Korea – sequence: 2 givenname: Hakjoo surname: Oh fullname: Oh, Hakjoo organization: Korea Univ., Seoul, South Korea – sequence: 3 surname: Kwangkeun Yi fullname: Kwangkeun Yi organization: Seoul Nat. Univ., Seoul, South Korea |
| BookMark | eNotjE9LwzAchqMouE5v3rz0C6QmaZImeBplm4OKh7nzyJ9fNFIzaTqh396CwgsPPDy8BbpKpwQI3VNSUUr0467drytGaFMJfoEKKmol5yl6iRZUCIUpY-IGFTl_EkIk13qBnl6M-4gJcAdmSDG94-05evDlHnpwY_yBfioPKZ_OaXajGaMrV8n0U475Fl0H02e4--cSHTbrt_YZd6_bXbvqsGGcjlhJDd4zXrugg61BWGW9YTaExnEmpWvMHCouheeeNKCos4EFypxW3jaiXqKHv98IAMfvIX6ZYTo2WgmpSf0LhFNItQ |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| DBID | 6IE 6IH CBEJK RIE RIO |
| DOI | 10.1109/ICSE.2017.54 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Proceedings Order Plan (POP) 1998-present by volume IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP) 1998-present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 1538638681 9781538638682 |
| EISSN | 1558-1225 |
| EndPage | 529 |
| ExternalDocumentID | 7985690 |
| Genre | orig-research |
| GroupedDBID | -~X .4S .DC 123 23M 29O 5VS 6IE 6IF 6IH 6IK 6IL 6IM 6IN 8US AAJGR AAWTH ABLEC ADZIZ AFFNX ALMA_UNASSIGNED_HOLDINGS APO ARCSS AVWKF BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO EDO FEDTE I-F I07 IEGSK IJVOP IPLJI M43 OCL RIE RIL RIO RNS XOL |
| ID | FETCH-LOGICAL-a241t-869edd243cf9fb3e5b8bda2bff7c4266c7aa248465d4d07e81cbf2f12c98db753 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 40 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000427091300046&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| IngestDate | Wed Aug 27 02:19:09 EDT 2025 |
| IsPeerReviewed | false |
| IsScholarly | true |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-a241t-869edd243cf9fb3e5b8bda2bff7c4266c7aa248465d4d07e81cbf2f12c98db753 |
| PageCount | 11 |
| ParticipantIDs | ieee_primary_7985690 |
| PublicationCentury | 2000 |
| PublicationDate | 2017-May |
| PublicationDateYYYYMMDD | 2017-05-01 |
| PublicationDate_xml | – month: 05 year: 2017 text: 2017-May |
| PublicationDecade | 2010 |
| PublicationTitle | Proceedings / International Conference on Software Engineering |
| PublicationTitleAbbrev | ICSE |
| PublicationYear | 2017 |
| Publisher | IEEE |
| Publisher_xml | – name: IEEE |
| SSID | ssj0006499 |
| Score | 2.2474434 |
| Snippet | We present a machine-learning-based technique for selectively applying unsoundness in static analysis. Existing bug-finding static analyzers are unsound in... |
| SourceID | ieee |
| SourceType | Publisher |
| StartPage | 519 |
| SubjectTerms | Benchmark testing Bug-finding Computer bugs Libraries Machine Learning Scalability Software engineering Static Analysis Support vector machines |
| Title | Machine-Learning-Guided Selectively Unsound Static Analysis |
| URI | https://ieeexplore.ieee.org/document/7985690 |
| WOSCitedRecordID | wos000427091300046&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1NawIxEB1UeujJtlr6TQ49NtrNZjcJPYq2PVQEK3iTTTJbhLIWdQv9903iul566S2EQGDyMW-SN_MA7lXqYK_NOHUhsqaccUMdSkCKJpJ5FGcOUfAgNiHGYzmfq0kDHupcGEQM5DPs-Wb4y7crU_qnsr5QMnHRXBOaQqS7XK361k0ddK-J7ar_OpgOPXFL9EKh_4NwSvAbo_b_ZjyB7iEBj0xq13IKDSzOoL1XYCDVgezA01vgQiKtyqR-0OdyadGSaZC3cTfZ5w-ZFRuvnUQ8rlwasi9D0oXZaPg-eKGVHALNnJvdUpkqtJbx2OQq1zEmWmqbMZ3nwng_a0TmBjo8kVhuHwXKyOic5REzSlrtwpJzaBWrAi-AaC2520IMo9jyNFMyNjaOE5UKhikm4hI63haLr13Fi0Vlhqu_u6_h2Ft6RwO8gdZ2XeItHJnv7XKzvgvL9AtzF5Vf |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LawIxEB6sLbQn22rpu3vosVF3N7tJ6FG0SlUEFbzJJpktQlmLj0L_fZO4rpdeegshEJg85pvkm_kAnkVsYK9OKDEhsiQ0oIoYlIAElc9TP0wMoqBObIINh3w2E6MSvBS5MIjoyGdYt033l6-XamufyhpM8MhEc0dwHFEaNHfZWsW9GxvwXlDbRaPXGrctdYvVXan_g3SK8xydyv_mPIfaIQXPGxXO5QJKmF1CZa_B4OVHsgqvA8eGRJIXSv0gb9uFRu2NncCNucs-f7xptrbqSZ5Flgvl7QuR1GDaaU9aXZILIpDEONoN4bFArQMaqlSkMsRIcqmTQKYpU9bTKpaYgQZRRJrqJkPuK5kGqR8owbU0gckVlLNlhtfgScmp2UQB-qGmcSJ4qHQYRiJmAcYYsRuoWlvMv3Y1L-a5GW7_7n6C0-5k0J_3e8P3OzizVt-RAu-hvFlt8QFO1PdmsV49uiX7BWasmKY |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=proceeding&rft.title=Proceedings+%2F+International+Conference+on+Software+Engineering&rft.atitle=Machine-Learning-Guided+Selectively+Unsound+Static+Analysis&rft.au=Kihong+Heo&rft.au=Oh%2C+Hakjoo&rft.au=Kwangkeun+Yi&rft.date=2017-05-01&rft.pub=IEEE&rft.eissn=1558-1225&rft.spage=519&rft.epage=529&rft_id=info:doi/10.1109%2FICSE.2017.54&rft.externalDocID=7985690 |