{"id":198380,"name":null,"description":" SEMA is based on angr, a symbolic execution engine  used to extract API calls. Especially, we extend ANGR with strategies to create representative signatures based on System Call Dependency graph (SCDG). Those SCDGs can be exploited in machine learning modules to do classification/detection.","url":"https://github.com/csvl/sema","last_synced_at":"2025-09-10T05:12:34.908Z","repository":{"id":52307153,"uuid":"468670789","full_name":"csvl/SEMA","owner":"csvl","description":" SEMA is based on angr, a symbolic execution engine  used to extract API calls. Especially, we extend ANGR with strategies to create representative signatures based on System Call Dependency graph (SCDG). Those SCDGs can be exploited in machine learning modules to do classification/detection.","archived":false,"fork":false,"pushed_at":"2025-03-10T10:16:12.000Z","size":1522969,"stargazers_count":116,"open_issues_count":17,"forks_count":23,"subscribers_count":4,"default_branch":"production","last_synced_at":"2025-09-06T21:27:08.058Z","etag":null,"topics":["angr","binary-analysis","classification","concolic-execution","ctf","cybersecurity","detection","linux","malware","malware-analysis","malware-detection","malware-research","python","reverse","reverse-engineering","sema","static-analysis","symbolic","symbolic-execution","windows"],"latest_commit_sha":null,"homepage":"https://csvl.github.io/SEMA/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/csvl.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-11T08:36:34.000Z","updated_at":"2025-08-31T04:15:31.000Z","dependencies_parsed_at":"2025-03-10T10:38:46.344Z","dependency_job_id":null,"html_url":"https://github.com/csvl/SEMA","commit_stats":null,"previous_names":["csvl/sema","csvl/sema-toolchain"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/csvl/SEMA","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csvl","download_url":"https://codeload.github.com/csvl/SEMA/tar.gz/refs/heads/production","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274416197,"owners_count":25280909,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-10T02:00:12.551Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"csvl","name":"csvl","uuid":"68434031","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/68434031?v=4","repositories_count":4,"last_synced_at":"2023-03-06T19:37:55.297Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/csvl","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-03-06T19:32:38.109Z","updated_at":"2023-03-06T19:37:55.323Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csvl","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csvl/repositories"},"packages":[],"commits":{"message":"Repository syncing started."},"issues_stats":{"full_name":"csvl/SEMA","html_url":"https://github.com/csvl/SEMA","last_synced_at":"2025-08-31T11:40:11.529Z","status":null,"issues_count":1,"pull_requests_count":5,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":1862474.3333333333,"issues_closed_count":0,"pull_requests_closed_count":3,"pull_request_authors_count":2,"issue_authors_count":1,"avg_comments_per_issue":0.0,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":2,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":1,"past_year_pull_requests_count":5,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":1862474.3333333333,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"created_at":"2025-08-29T17:13:02.879Z","updated_at":"2025-09-02T23:01:25.356Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/csvl%2FSEMA/issues","issue_labels_count":{},"pull_request_labels_count":{"dependencies":8,"python":8},"issue_author_associations_count":{"NONE":1},"pull_request_author_associations_count":{"CONTRIBUTOR":11,"NONE":5,"MEMBER":3},"issue_authors":{"Thib-fkr":1},"pull_request_authors":{"dependabot[bot]":8,"Thib-fkr":4,"ElNiak":3,"codacy-badger":2,"richarddej":2},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:17.013Z","repositories_count":10171215,"issues_count":32017338,"pull_requests_count":100294441,"authors_count":10732031,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{"dependencies":6,"python":6},"past_year_issue_author_associations_count":{"NONE":1},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":9,"NONE":5},"past_year_issue_authors":{"Thib-fkr":1},"past_year_pull_request_authors":{"dependabot[bot]":6,"Thib-fkr":4,"codacy-badger":2,"richarddej":2},"maintainers":[{"login":"ElNiak","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ElNiak"}],"active_maintainers":[]},"events":{"total":{"IssuesEvent":1,"WatchEvent":28,"PushEvent":6,"PullRequestReviewEvent":3,"PullRequestEvent":20,"ForkEvent":8,"CreateEvent":5},"last_year":{"IssuesEvent":1,"WatchEvent":28,"PushEvent":6,"PullRequestReviewEvent":3,"PullRequestEvent":20,"ForkEvent":8,"CreateEvent":5}},"keywords":["angr","binary-analysis","classification","concolic-execution","ctf","cybersecurity","detection","linux","malware","malware-analysis","malware-detection","malware-research","python","reverse","reverse-engineering","sema","static-analysis","symbolic","symbolic-execution","windows"],"dependencies":[{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2023-12-08T15:40:34.457Z","updated_at":"2023-12-08T15:40:34.457Z","repository_link":"https://github.com/csvl/SEMA/blob/production/pyproject.toml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/pr-generate-docs.yaml","sha":null,"kind":"manifest","created_at":"2024-06-04T00:10:53.026Z","updated_at":"2024-06-04T00:10:53.026Z","repository_link":"https://github.com/csvl/SEMA/blob/production/.github/workflows/pr-generate-docs.yaml","dependencies":[{"id":18394053641,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":18394053642,"package_name":"stefanzweifel/git-auto-commit-action","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/python-app.yml","sha":null,"kind":"manifest","created_at":"2024-06-04T00:10:54.840Z","updated_at":"2024-06-04T00:10:54.840Z","repository_link":"https://github.com/csvl/SEMA/blob/production/.github/workflows/python-app.yml","dependencies":[{"id":18394053805,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":18394053806,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2024-06-04T00:10:55.394Z","updated_at":"2024-06-04T00:10:55.394Z","repository_link":"https://github.com/csvl/SEMA/blob/production/requirements.txt","dependencies":[{"id":18394054455,"package_name":"mkgendocs","ecosystem":"pypi","requirements":"==0.9.2","direct":true,"kind":"runtime","optional":false},{"id":18394054456,"package_name":"mkdocs-material","ecosystem":"pypi","requirements":"==9.1.15","direct":true,"kind":"runtime","optional":false},{"id":18394054457,"package_name":"mkdocs","ecosystem":"pypi","requirements":"==1.5.0","direct":true,"kind":"runtime","optional":false},{"id":18394054458,"package_name":"PyYAML","ecosystem":"pypi","requirements":"==6.0.1","direct":true,"kind":"runtime","optional":false},{"id":18394054459,"package_name":"pymdown-extensions","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18394054460,"package_name":"mkdocs-material-extensions","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit.yml","sha":null,"kind":"manifest","created_at":"2024-06-05T14:24:40.651Z","updated_at":"2024-06-05T14:24:40.651Z","repository_link":"https://github.com/csvl/SEMA/blob/production/.github/workflows/pre-commit.yml","dependencies":[{"id":18426295376,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":18426295377,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":18426295378,"package_name":"pre-commit/action","ecosystem":"actions","requirements":"v3.0.1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"requirement-mkdoc.txt","sha":null,"kind":"manifest","created_at":"2024-06-05T14:24:46.452Z","updated_at":"2024-06-05T14:24:46.452Z","repository_link":"https://github.com/csvl/SEMA/blob/production/requirement-mkdoc.txt","dependencies":[{"id":18426298707,"package_name":"PyYAML","ecosystem":"pypi","requirements":"==6.0.1","direct":true,"kind":"runtime","optional":false},{"id":18426298708,"package_name":"pymdown-extensions","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298709,"package_name":"mkdocs-material-extensions","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298710,"package_name":"mkdocs-gen-files","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298711,"package_name":"mkdocs-literate-nav","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298712,"package_name":"mkdocs-section-index","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298713,"package_name":"mkdocstrings","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298714,"package_name":"mkdocs-exclude","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298715,"package_name":"mkdocs-same-dir","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298716,"package_name":"mkdocs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298717,"package_name":"mkdocs-material","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298718,"package_name":"mkdocs-minify-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298719,"package_name":"mkdocs-git-revision-date-localized-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298720,"package_name":"mkdocs-git-authors-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298721,"package_name":"mkdocs-table-reader-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298727,"package_name":"mkdocs-img2fig-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298728,"package_name":"mknotebooks","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298729,"package_name":"mkdocs-awesome-pages-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298730,"package_name":"mkdocs-enumerate-headings-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298731,"package_name":"mkdocs-print-site-plugin","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298732,"package_name":"mkgendocs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298733,"package_name":"markdown-callouts","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298734,"package_name":"mkdocs-coverage","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298735,"package_name":"dill","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298736,"package_name":"pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298737,"package_name":"seaborn","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298738,"package_name":"matplotlib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298739,"package_name":"claripy","ecosystem":"pypi","requirements":"==9.2.21","direct":true,"kind":"runtime","optional":false},{"id":18426298740,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298741,"package_name":"logbook","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298742,"package_name":"progressbar","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298743,"package_name":"gensim","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298744,"package_name":"angr","ecosystem":"pypi","requirements":"==9.2.21","direct":true,"kind":"runtime","optional":false},{"id":18426298745,"package_name":"grakel","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298746,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298747,"package_name":"torch","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298748,"package_name":"torchvision","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298749,"package_name":"flask","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298750,"package_name":"termcolor","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298751,"package_name":"terminal_banner","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298752,"package_name":"pymongo","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298753,"package_name":"pyzipper","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298754,"package_name":"click","ecosystem":"pypi","requirements":"==8.1.3","direct":true,"kind":"runtime","optional":false},{"id":18426298755,"package_name":"tasks","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298756,"package_name":"requests","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298757,"package_name":"graphviz","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298758,"package_name":"monkeyhex","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298759,"package_name":"protobuf","ecosystem":"pypi","requirements":"==3.20.","direct":true,"kind":"runtime","optional":false},{"id":18426298760,"package_name":"researchpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298761,"package_name":"avatar2","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298762,"package_name":"pyinstaller","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298763,"package_name":"cryptography","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298764,"package_name":"mmh3","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298765,"package_name":"psutil","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298766,"package_name":"r2pipe","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298767,"package_name":"unix","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298768,"package_name":"kvm","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298769,"package_name":"nose","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298770,"package_name":"libvirt-python","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298771,"package_name":"unipacker","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298772,"package_name":"minidump","ecosystem":"pypi","requirements":"==0.0.10","direct":true,"kind":"runtime","optional":false},{"id":18426298809,"package_name":"pygraphviz","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298810,"package_name":"notebook","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298811,"package_name":"flask","ecosystem":"pypi","requirements":"==2.2.5","direct":true,"kind":"runtime","optional":false},{"id":18426298812,"package_name":"flask_session","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298813,"package_name":"django","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":18426298814,"package_name":"Flask-Cors","ecosystem":"pypi","requirements":"==3.0.10","direct":true,"kind":"runtime","optional":false},{"id":18426298815,"package_name":"npf-web-extension","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/.pre-commit-config.yaml","sha":null,"kind":"manifest","created_at":"2024-08-19T15:27:49.745Z","updated_at":"2024-08-19T15:27:49.745Z","repository_link":"https://github.com/csvl/SEMA/blob/production/.github/workflows/.pre-commit-config.yaml","dependencies":[]}],"score":null,"created_at":"2025-09-09T03:30:37.705Z","updated_at":"2025-10-07T08:43:14.769Z","avatar_url":"https://github.com/csvl.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":[],"readme_doi_urls":["https://doi.org/10.1007/978-3-031-31108-6"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/198380","html_url":"https://science.ecosyste.ms/projects/198380"}