Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Path: blob/master/db/schema.rb
Views: 11703
# This file is auto-generated from the current state of the database. Instead1# of editing this file, please use the migrations feature of Active Record to2# incrementally modify your database, and then regenerate this schema definition.3#4# This file is the source Rails uses to define your schema when running `bin/rails5# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to6# be faster and is potentially less error prone than running all of your7# migrations from scratch. Old migrations may fail to apply correctly if those8# migrations use external dependencies or application code.9#10# It's strongly recommended that you check this file into your version control system.1112ActiveRecord::Schema[7.0].define(version: 2022_12_09_005658) do13# These are extensions that must be enabled in order to support this database14enable_extension "plpgsql"1516create_table "api_keys", id: :serial, force: :cascade do |t|17t.text "token"18t.datetime "created_at", precision: nil, null: false19t.datetime "updated_at", precision: nil, null: false20end2122create_table "async_callbacks", id: :serial, force: :cascade do |t|23t.string "uuid", null: false24t.integer "timestamp", null: false25t.string "listener_uri"26t.string "target_host"27t.string "target_port"28t.datetime "created_at", precision: nil, null: false29t.datetime "updated_at", precision: nil, null: false30end3132create_table "automatic_exploitation_match_results", id: :serial, force: :cascade do |t|33t.integer "match_id"34t.integer "run_id"35t.string "state", null: false36t.datetime "created_at", precision: nil, null: false37t.datetime "updated_at", precision: nil, null: false38t.index ["match_id"], name: "index_automatic_exploitation_match_results_on_match_id"39t.index ["run_id"], name: "index_automatic_exploitation_match_results_on_run_id"40end4142create_table "automatic_exploitation_match_sets", id: :serial, force: :cascade do |t|43t.integer "workspace_id"44t.integer "user_id"45t.datetime "created_at", precision: nil, null: false46t.datetime "updated_at", precision: nil, null: false47t.index ["user_id"], name: "index_automatic_exploitation_match_sets_on_user_id"48t.index ["workspace_id"], name: "index_automatic_exploitation_match_sets_on_workspace_id"49end5051create_table "automatic_exploitation_matches", id: :serial, force: :cascade do |t|52t.integer "module_detail_id"53t.string "state"54t.integer "nexpose_data_vulnerability_definition_id"55t.datetime "created_at", precision: nil, null: false56t.datetime "updated_at", precision: nil, null: false57t.integer "match_set_id"58t.string "matchable_type"59t.integer "matchable_id"60t.text "module_fullname"61t.index ["module_detail_id"], name: "index_automatic_exploitation_matches_on_module_detail_id"62t.index ["module_fullname"], name: "index_automatic_exploitation_matches_on_module_fullname"63end6465create_table "automatic_exploitation_runs", id: :serial, force: :cascade do |t|66t.integer "workspace_id"67t.integer "user_id"68t.integer "match_set_id"69t.datetime "created_at", precision: nil, null: false70t.datetime "updated_at", precision: nil, null: false71t.index ["match_set_id"], name: "index_automatic_exploitation_runs_on_match_set_id"72t.index ["user_id"], name: "index_automatic_exploitation_runs_on_user_id"73t.index ["workspace_id"], name: "index_automatic_exploitation_runs_on_workspace_id"74end7576create_table "clients", id: :serial, force: :cascade do |t|77t.integer "host_id"78t.datetime "created_at", precision: nil79t.string "ua_string", limit: 1024, null: false80t.string "ua_name", limit: 6481t.string "ua_ver", limit: 3282t.datetime "updated_at", precision: nil83end8485create_table "credential_cores_tasks", id: false, force: :cascade do |t|86t.integer "core_id"87t.integer "task_id"88end8990create_table "credential_logins_tasks", id: false, force: :cascade do |t|91t.integer "login_id"92t.integer "task_id"93end9495create_table "creds", id: :serial, force: :cascade do |t|96t.integer "service_id", null: false97t.datetime "created_at", precision: nil, null: false98t.datetime "updated_at", precision: nil, null: false99t.string "user", limit: 2048100t.string "pass", limit: 4096101t.boolean "active", default: true102t.string "proof", limit: 4096103t.string "ptype", limit: 256104t.integer "source_id"105t.string "source_type"106end107108create_table "events", id: :serial, force: :cascade do |t|109t.integer "workspace_id"110t.integer "host_id"111t.datetime "created_at", precision: nil112t.string "name"113t.datetime "updated_at", precision: nil114t.boolean "critical"115t.boolean "seen"116t.string "username"117t.text "info"118end119120create_table "exploit_attempts", id: :serial, force: :cascade do |t|121t.integer "host_id"122t.integer "service_id"123t.integer "vuln_id"124t.datetime "attempted_at", precision: nil125t.boolean "exploited"126t.string "fail_reason"127t.string "username"128t.text "module"129t.integer "session_id"130t.integer "loot_id"131t.integer "port"132t.string "proto"133t.text "fail_detail"134end135136create_table "exploited_hosts", id: :serial, force: :cascade do |t|137t.integer "host_id", null: false138t.integer "service_id"139t.string "session_uuid", limit: 8140t.string "name", limit: 2048141t.string "payload", limit: 2048142t.datetime "created_at", precision: nil, null: false143t.datetime "updated_at", precision: nil, null: false144end145146create_table "host_details", id: :serial, force: :cascade do |t|147t.integer "host_id"148t.integer "nx_console_id"149t.integer "nx_device_id"150t.string "src"151t.string "nx_site_name"152t.string "nx_site_importance"153t.string "nx_scan_template"154t.float "nx_risk_score"155end156157create_table "hosts", id: :serial, force: :cascade do |t|158t.datetime "created_at", precision: nil159t.inet "address", null: false160t.string "mac"161t.string "comm"162t.string "name"163t.string "state"164t.string "os_name"165t.string "os_flavor"166t.string "os_sp"167t.string "os_lang"168t.string "arch"169t.integer "workspace_id", null: false170t.datetime "updated_at", precision: nil171t.text "purpose"172t.string "info", limit: 65536173t.text "comments"174t.text "scope"175t.text "virtual_host"176t.integer "note_count", default: 0177t.integer "vuln_count", default: 0178t.integer "service_count", default: 0179t.integer "host_detail_count", default: 0180t.integer "exploit_attempt_count", default: 0181t.integer "cred_count", default: 0182t.string "detected_arch"183t.string "os_family"184t.index ["name"], name: "index_hosts_on_name"185t.index ["os_flavor"], name: "index_hosts_on_os_flavor"186t.index ["os_name"], name: "index_hosts_on_os_name"187t.index ["purpose"], name: "index_hosts_on_purpose"188t.index ["state"], name: "index_hosts_on_state"189t.index ["workspace_id", "address"], name: "index_hosts_on_workspace_id_and_address", unique: true190end191192create_table "hosts_tags", id: :serial, force: :cascade do |t|193t.integer "host_id"194t.integer "tag_id"195end196197create_table "listeners", id: :serial, force: :cascade do |t|198t.datetime "created_at", precision: nil, null: false199t.datetime "updated_at", precision: nil, null: false200t.integer "workspace_id", default: 1, null: false201t.integer "task_id"202t.boolean "enabled", default: true203t.text "owner"204t.text "payload"205t.text "address"206t.integer "port"207t.binary "options"208t.text "macro"209end210211create_table "loots", id: :serial, force: :cascade do |t|212t.integer "workspace_id", default: 1, null: false213t.integer "host_id"214t.integer "service_id"215t.string "ltype", limit: 512216t.string "path", limit: 1024217t.text "data"218t.datetime "created_at", precision: nil, null: false219t.datetime "updated_at", precision: nil, null: false220t.string "content_type"221t.text "name"222t.text "info"223t.integer "module_run_id"224t.index ["module_run_id"], name: "index_loots_on_module_run_id"225end226227create_table "macros", id: :serial, force: :cascade do |t|228t.datetime "created_at", precision: nil, null: false229t.datetime "updated_at", precision: nil, null: false230t.text "owner"231t.text "name"232t.text "description"233t.binary "actions"234t.binary "prefs"235end236237create_table "metasploit_credential_cores", id: :serial, force: :cascade do |t|238t.string "origin_type", null: false239t.integer "origin_id", null: false240t.integer "private_id"241t.integer "public_id"242t.integer "realm_id"243t.integer "workspace_id", null: false244t.datetime "created_at", precision: nil, null: false245t.datetime "updated_at", precision: nil, null: false246t.integer "logins_count", default: 0247t.index ["origin_type", "origin_id"], name: "index_metasploit_credential_cores_on_origin_type_and_origin_id"248t.index ["private_id"], name: "index_metasploit_credential_cores_on_private_id"249t.index ["public_id"], name: "index_metasploit_credential_cores_on_public_id"250t.index ["realm_id"], name: "index_metasploit_credential_cores_on_realm_id"251t.index ["workspace_id", "private_id"], name: "unique_private_metasploit_credential_cores", unique: true, where: "((realm_id IS NULL) AND (public_id IS NULL) AND (private_id IS NOT NULL))"252t.index ["workspace_id", "public_id", "private_id"], name: "unique_realmless_metasploit_credential_cores", unique: true, where: "((realm_id IS NULL) AND (public_id IS NOT NULL) AND (private_id IS NOT NULL))"253t.index ["workspace_id", "public_id"], name: "unique_public_metasploit_credential_cores", unique: true, where: "((realm_id IS NULL) AND (public_id IS NOT NULL) AND (private_id IS NULL))"254t.index ["workspace_id", "realm_id", "private_id"], name: "unique_publicless_metasploit_credential_cores", unique: true, where: "((realm_id IS NOT NULL) AND (public_id IS NULL) AND (private_id IS NOT NULL))"255t.index ["workspace_id", "realm_id", "public_id", "private_id"], name: "unique_complete_metasploit_credential_cores", unique: true, where: "((realm_id IS NOT NULL) AND (public_id IS NOT NULL) AND (private_id IS NOT NULL))"256t.index ["workspace_id", "realm_id", "public_id"], name: "unique_privateless_metasploit_credential_cores", unique: true, where: "((realm_id IS NOT NULL) AND (public_id IS NOT NULL) AND (private_id IS NULL))"257t.index ["workspace_id"], name: "index_metasploit_credential_cores_on_workspace_id"258end259260create_table "metasploit_credential_logins", id: :serial, force: :cascade do |t|261t.integer "core_id", null: false262t.integer "service_id", null: false263t.string "access_level"264t.string "status", null: false265t.datetime "last_attempted_at", precision: nil266t.datetime "created_at", precision: nil, null: false267t.datetime "updated_at", precision: nil, null: false268t.index ["core_id", "service_id"], name: "index_metasploit_credential_logins_on_core_id_and_service_id", unique: true269t.index ["service_id", "core_id"], name: "index_metasploit_credential_logins_on_service_id_and_core_id", unique: true270end271272create_table "metasploit_credential_origin_cracked_passwords", id: :serial, force: :cascade do |t|273t.integer "metasploit_credential_core_id", null: false274t.datetime "created_at", precision: nil, null: false275t.datetime "updated_at", precision: nil, null: false276t.index ["metasploit_credential_core_id"], name: "originating_credential_cores"277end278279create_table "metasploit_credential_origin_imports", id: :serial, force: :cascade do |t|280t.text "filename", null: false281t.integer "task_id"282t.datetime "created_at", precision: nil, null: false283t.datetime "updated_at", precision: nil, null: false284t.index ["task_id"], name: "index_metasploit_credential_origin_imports_on_task_id"285end286287create_table "metasploit_credential_origin_manuals", id: :serial, force: :cascade do |t|288t.integer "user_id", null: false289t.datetime "created_at", precision: nil, null: false290t.datetime "updated_at", precision: nil, null: false291t.index ["user_id"], name: "index_metasploit_credential_origin_manuals_on_user_id"292end293294create_table "metasploit_credential_origin_services", id: :serial, force: :cascade do |t|295t.integer "service_id", null: false296t.text "module_full_name", null: false297t.datetime "created_at", precision: nil, null: false298t.datetime "updated_at", precision: nil, null: false299t.index ["service_id", "module_full_name"], name: "unique_metasploit_credential_origin_services", unique: true300end301302create_table "metasploit_credential_origin_sessions", id: :serial, force: :cascade do |t|303t.text "post_reference_name", null: false304t.integer "session_id", null: false305t.datetime "created_at", precision: nil, null: false306t.datetime "updated_at", precision: nil, null: false307t.index ["session_id", "post_reference_name"], name: "unique_metasploit_credential_origin_sessions", unique: true308end309310create_table "metasploit_credential_privates", id: :serial, force: :cascade do |t|311t.string "type", null: false312t.text "data", null: false313t.datetime "created_at", precision: nil, null: false314t.datetime "updated_at", precision: nil, null: false315t.string "jtr_format"316t.index "type, decode(md5(data), 'hex'::text)", name: "index_metasploit_credential_privates_on_type_and_data_pkcs12", unique: true, where: "((type)::text = 'Metasploit::Credential::Pkcs12'::text)"317t.index "type, decode(md5(data), 'hex'::text)", name: "index_metasploit_credential_privates_on_type_and_data_sshkey", unique: true, where: "((type)::text = 'Metasploit::Credential::SSHKey'::text)"318t.index ["type", "data"], name: "index_metasploit_credential_privates_on_type_and_data", unique: true, where: "(NOT (((type)::text = 'Metasploit::Credential::SSHKey'::text) OR ((type)::text = 'Metasploit::Credential::Pkcs12'::text)))"319end320321create_table "metasploit_credential_publics", id: :serial, force: :cascade do |t|322t.string "username", null: false323t.datetime "created_at", precision: nil, null: false324t.datetime "updated_at", precision: nil, null: false325t.string "type", null: false326t.index ["username"], name: "index_metasploit_credential_publics_on_username", unique: true327end328329create_table "metasploit_credential_realms", id: :serial, force: :cascade do |t|330t.string "key", null: false331t.string "value", null: false332t.datetime "created_at", precision: nil, null: false333t.datetime "updated_at", precision: nil, null: false334t.index ["key", "value"], name: "index_metasploit_credential_realms_on_key_and_value", unique: true335end336337create_table "mod_refs", id: :serial, force: :cascade do |t|338t.string "module", limit: 1024339t.string "mtype", limit: 128340t.text "ref"341end342343create_table "module_actions", id: :serial, force: :cascade do |t|344t.integer "detail_id"345t.text "name"346t.index ["detail_id"], name: "index_module_actions_on_detail_id"347end348349create_table "module_archs", id: :serial, force: :cascade do |t|350t.integer "detail_id"351t.text "name"352t.index ["detail_id"], name: "index_module_archs_on_detail_id"353end354355create_table "module_authors", id: :serial, force: :cascade do |t|356t.integer "detail_id"357t.text "name"358t.text "email"359t.index ["detail_id"], name: "index_module_authors_on_detail_id"360end361362create_table "module_details", id: :serial, force: :cascade do |t|363t.datetime "mtime", precision: nil364t.text "file"365t.string "mtype"366t.text "refname"367t.text "fullname"368t.text "name"369t.integer "rank"370t.text "description"371t.string "license"372t.boolean "privileged"373t.datetime "disclosure_date", precision: nil374t.integer "default_target"375t.text "default_action"376t.string "stance"377t.boolean "ready"378t.index ["description"], name: "index_module_details_on_description"379t.index ["mtype"], name: "index_module_details_on_mtype"380t.index ["name"], name: "index_module_details_on_name"381t.index ["refname"], name: "index_module_details_on_refname"382end383384create_table "module_mixins", id: :serial, force: :cascade do |t|385t.integer "detail_id"386t.text "name"387t.index ["detail_id"], name: "index_module_mixins_on_detail_id"388end389390create_table "module_platforms", id: :serial, force: :cascade do |t|391t.integer "detail_id"392t.text "name"393t.index ["detail_id"], name: "index_module_platforms_on_detail_id"394end395396create_table "module_refs", id: :serial, force: :cascade do |t|397t.integer "detail_id"398t.text "name"399t.index ["detail_id"], name: "index_module_refs_on_detail_id"400t.index ["name"], name: "index_module_refs_on_name"401end402403create_table "module_runs", id: :serial, force: :cascade do |t|404t.datetime "attempted_at", precision: nil405t.text "fail_detail"406t.string "fail_reason"407t.text "module_fullname"408t.integer "port"409t.string "proto"410t.integer "session_id"411t.string "status"412t.integer "trackable_id"413t.string "trackable_type"414t.integer "user_id"415t.string "username"416t.datetime "created_at", precision: nil, null: false417t.datetime "updated_at", precision: nil, null: false418t.index ["session_id"], name: "index_module_runs_on_session_id"419t.index ["user_id"], name: "index_module_runs_on_user_id"420end421422create_table "module_targets", id: :serial, force: :cascade do |t|423t.integer "detail_id"424t.integer "index"425t.text "name"426t.index ["detail_id"], name: "index_module_targets_on_detail_id"427end428429create_table "nexpose_consoles", id: :serial, force: :cascade do |t|430t.datetime "created_at", precision: nil, null: false431t.datetime "updated_at", precision: nil, null: false432t.boolean "enabled", default: true433t.text "owner"434t.text "address"435t.integer "port", default: 3780436t.text "username"437t.text "password"438t.text "status"439t.text "version"440t.text "cert"441t.binary "cached_sites"442t.text "name"443end444445create_table "notes", id: :serial, force: :cascade do |t|446t.datetime "created_at", precision: nil447t.string "ntype", limit: 512448t.integer "workspace_id", default: 1, null: false449t.integer "service_id"450t.integer "host_id"451t.datetime "updated_at", precision: nil452t.boolean "critical"453t.boolean "seen"454t.text "data"455t.integer "vuln_id"456t.index ["ntype"], name: "index_notes_on_ntype"457t.index ["vuln_id"], name: "index_notes_on_vuln_id"458end459460create_table "payloads", id: :serial, force: :cascade do |t|461t.string "name"462t.string "uuid"463t.integer "uuid_mask"464t.integer "timestamp"465t.string "arch"466t.string "platform"467t.string "urls"468t.string "description"469t.string "raw_payload"470t.string "raw_payload_hash"471t.string "build_status"472t.string "build_opts"473t.datetime "created_at", precision: nil, null: false474t.datetime "updated_at", precision: nil, null: false475end476477create_table "profiles", id: :serial, force: :cascade do |t|478t.datetime "created_at", precision: nil, null: false479t.datetime "updated_at", precision: nil, null: false480t.boolean "active", default: true481t.text "name"482t.text "owner"483t.binary "settings"484end485486create_table "refs", id: :serial, force: :cascade do |t|487t.integer "ref_id"488t.datetime "created_at", precision: nil489t.string "name", limit: 512490t.datetime "updated_at", precision: nil491t.index ["name"], name: "index_refs_on_name"492end493494create_table "report_templates", id: :serial, force: :cascade do |t|495t.integer "workspace_id", default: 1, null: false496t.string "created_by"497t.string "path", limit: 1024498t.text "name"499t.datetime "created_at", precision: nil, null: false500t.datetime "updated_at", precision: nil, null: false501end502503create_table "reports", id: :serial, force: :cascade do |t|504t.integer "workspace_id", default: 1, null: false505t.string "created_by"506t.string "rtype"507t.string "path", limit: 1024508t.text "options"509t.datetime "created_at", precision: nil, null: false510t.datetime "updated_at", precision: nil, null: false511t.datetime "downloaded_at", precision: nil512t.integer "task_id"513t.string "name", limit: 63514end515516create_table "routes", id: :serial, force: :cascade do |t|517t.integer "session_id"518t.string "subnet"519t.string "netmask"520end521522create_table "services", id: :serial, force: :cascade do |t|523t.integer "host_id"524t.datetime "created_at", precision: nil525t.integer "port", null: false526t.string "proto", limit: 16, null: false527t.string "state"528t.string "name"529t.datetime "updated_at", precision: nil530t.text "info"531t.index ["host_id", "port", "proto"], name: "index_services_on_host_id_and_port_and_proto", unique: true532t.index ["name"], name: "index_services_on_name"533t.index ["port"], name: "index_services_on_port"534t.index ["proto"], name: "index_services_on_proto"535t.index ["state"], name: "index_services_on_state"536end537538create_table "session_events", id: :serial, force: :cascade do |t|539t.integer "session_id"540t.string "etype"541t.binary "command"542t.binary "output"543t.string "remote_path"544t.string "local_path"545t.datetime "created_at", precision: nil546end547548create_table "sessions", id: :serial, force: :cascade do |t|549t.integer "host_id"550t.string "stype"551t.string "via_exploit"552t.string "via_payload"553t.string "desc"554t.integer "port"555t.string "platform"556t.text "datastore"557t.datetime "opened_at", precision: nil, null: false558t.datetime "closed_at", precision: nil559t.string "close_reason"560t.integer "local_id"561t.datetime "last_seen", precision: nil562t.integer "module_run_id"563t.index ["module_run_id"], name: "index_sessions_on_module_run_id"564end565566create_table "tags", id: :serial, force: :cascade do |t|567t.integer "user_id"568t.string "name", limit: 1024569t.text "desc"570t.boolean "report_summary", default: false, null: false571t.boolean "report_detail", default: false, null: false572t.boolean "critical", default: false, null: false573t.datetime "created_at", precision: nil, null: false574t.datetime "updated_at", precision: nil, null: false575end576577create_table "task_creds", id: :serial, force: :cascade do |t|578t.integer "task_id", null: false579t.integer "cred_id", null: false580t.datetime "created_at", precision: nil, null: false581t.datetime "updated_at", precision: nil, null: false582end583584create_table "task_hosts", id: :serial, force: :cascade do |t|585t.integer "task_id", null: false586t.integer "host_id", null: false587t.datetime "created_at", precision: nil, null: false588t.datetime "updated_at", precision: nil, null: false589end590591create_table "task_services", id: :serial, force: :cascade do |t|592t.integer "task_id", null: false593t.integer "service_id", null: false594t.datetime "created_at", precision: nil, null: false595t.datetime "updated_at", precision: nil, null: false596end597598create_table "task_sessions", id: :serial, force: :cascade do |t|599t.integer "task_id", null: false600t.integer "session_id", null: false601t.datetime "created_at", precision: nil, null: false602t.datetime "updated_at", precision: nil, null: false603end604605create_table "tasks", id: :serial, force: :cascade do |t|606t.integer "workspace_id", default: 1, null: false607t.string "created_by"608t.string "module"609t.datetime "completed_at", precision: nil610t.string "path", limit: 1024611t.string "info"612t.string "description"613t.integer "progress"614t.text "options"615t.text "error"616t.datetime "created_at", precision: nil, null: false617t.datetime "updated_at", precision: nil, null: false618t.text "result"619t.string "module_uuid", limit: 8620t.binary "settings"621end622623create_table "users", id: :serial, force: :cascade do |t|624t.string "username"625t.string "crypted_password"626t.string "password_salt"627t.string "persistence_token"628t.datetime "created_at", precision: nil, null: false629t.datetime "updated_at", precision: nil, null: false630t.string "fullname"631t.string "email"632t.string "phone"633t.string "company"634t.string "prefs", limit: 524288635t.boolean "admin", default: true, null: false636end637638create_table "vuln_attempts", id: :serial, force: :cascade do |t|639t.integer "vuln_id"640t.datetime "attempted_at", precision: nil641t.boolean "exploited"642t.string "fail_reason"643t.string "username"644t.text "module"645t.integer "session_id"646t.integer "loot_id"647t.text "fail_detail"648end649650create_table "vuln_details", id: :serial, force: :cascade do |t|651t.integer "vuln_id"652t.float "cvss_score"653t.string "cvss_vector"654t.string "title"655t.text "description"656t.text "solution"657t.binary "proof"658t.integer "nx_console_id"659t.integer "nx_device_id"660t.string "nx_vuln_id"661t.float "nx_severity"662t.float "nx_pci_severity"663t.datetime "nx_published", precision: nil664t.datetime "nx_added", precision: nil665t.datetime "nx_modified", precision: nil666t.text "nx_tags"667t.text "nx_vuln_status"668t.text "nx_proof_key"669t.string "src"670t.integer "nx_scan_id"671t.datetime "nx_vulnerable_since", precision: nil672t.string "nx_pci_compliance_status"673end674675create_table "vulns", id: :serial, force: :cascade do |t|676t.integer "host_id"677t.integer "service_id"678t.datetime "created_at", precision: nil679t.string "name"680t.datetime "updated_at", precision: nil681t.string "info", limit: 65536682t.datetime "exploited_at", precision: nil683t.integer "vuln_detail_count", default: 0684t.integer "vuln_attempt_count", default: 0685t.integer "origin_id"686t.string "origin_type"687t.index ["name"], name: "index_vulns_on_name"688t.index ["origin_id"], name: "index_vulns_on_origin_id"689end690691create_table "vulns_refs", id: :serial, force: :cascade do |t|692t.integer "ref_id"693t.integer "vuln_id"694end695696create_table "web_forms", id: :serial, force: :cascade do |t|697t.integer "web_site_id", null: false698t.datetime "created_at", precision: nil, null: false699t.datetime "updated_at", precision: nil, null: false700t.text "path"701t.string "method", limit: 1024702t.text "params"703t.text "query"704t.index ["path"], name: "index_web_forms_on_path"705end706707create_table "web_pages", id: :serial, force: :cascade do |t|708t.integer "web_site_id", null: false709t.datetime "created_at", precision: nil, null: false710t.datetime "updated_at", precision: nil, null: false711t.text "path"712t.text "query"713t.integer "code", null: false714t.text "cookie"715t.text "auth"716t.text "ctype"717t.datetime "mtime", precision: nil718t.text "location"719t.text "headers"720t.binary "body"721t.binary "request"722t.index ["path"], name: "index_web_pages_on_path"723t.index ["query"], name: "index_web_pages_on_query"724end725726create_table "web_sites", id: :serial, force: :cascade do |t|727t.integer "service_id", null: false728t.datetime "created_at", precision: nil, null: false729t.datetime "updated_at", precision: nil, null: false730t.string "vhost", limit: 2048731t.text "comments"732t.text "options"733t.index ["comments"], name: "index_web_sites_on_comments"734t.index ["options"], name: "index_web_sites_on_options"735t.index ["vhost"], name: "index_web_sites_on_vhost"736end737738create_table "web_vulns", id: :serial, force: :cascade do |t|739t.integer "web_site_id", null: false740t.datetime "created_at", precision: nil, null: false741t.datetime "updated_at", precision: nil, null: false742t.text "path", null: false743t.string "method", limit: 1024, null: false744t.text "params"745t.text "pname"746t.integer "risk", null: false747t.string "name", limit: 1024, null: false748t.text "query"749t.text "category", null: false750t.integer "confidence", null: false751t.text "description"752t.text "blame"753t.binary "request"754t.binary "proof", null: false755t.string "owner"756t.text "payload"757t.index ["method"], name: "index_web_vulns_on_method"758t.index ["name"], name: "index_web_vulns_on_name"759t.index ["path"], name: "index_web_vulns_on_path"760end761762create_table "wmap_requests", id: :serial, force: :cascade do |t|763t.string "host"764t.inet "address"765t.integer "port"766t.integer "ssl"767t.string "meth", limit: 32768t.text "path"769t.text "headers"770t.text "query"771t.text "body"772t.string "respcode", limit: 16773t.text "resphead"774t.text "response"775t.datetime "created_at", precision: nil776t.datetime "updated_at", precision: nil777end778779create_table "wmap_targets", id: :serial, force: :cascade do |t|780t.string "host"781t.inet "address"782t.integer "port"783t.integer "ssl"784t.integer "selected"785t.datetime "created_at", precision: nil786t.datetime "updated_at", precision: nil787end788789create_table "workspace_members", id: false, force: :cascade do |t|790t.integer "workspace_id", null: false791t.integer "user_id", null: false792end793794create_table "workspaces", id: :serial, force: :cascade do |t|795t.string "name"796t.datetime "created_at", precision: nil, null: false797t.datetime "updated_at", precision: nil, null: false798t.string "boundary", limit: 4096799t.string "description", limit: 4096800t.integer "owner_id"801t.boolean "limit_to_network", default: false, null: false802t.boolean "import_fingerprint", default: false803end804805end806807808