{"id":13481845,"url":"https://github.com/freak3dot/smart-honeypot","last_synced_at":"2025-03-27T12:31:42.479Z","repository":{"id":16022259,"uuid":"18765902","full_name":"freak3dot/smart-honeypot","owner":"freak3dot","description":"PHP Script demonstrating a smart honey pot.","archived":false,"fork":false,"pushed_at":"2014-04-19T02:54:43.000Z","size":160,"stargazers_count":16,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-08-01T17:30:46.454Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/freak3dot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-04-14T15:31:01.000Z","updated_at":"2023-02-26T15:44:05.000Z","dependencies_parsed_at":"2022-08-30T15:40:38.120Z","dependency_job_id":null,"html_url":"https://github.com/freak3dot/smart-honeypot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freak3dot%2Fsmart-honeypot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freak3dot%2Fsmart-honeypot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freak3dot%2Fsmart-honeypot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freak3dot%2Fsmart-honeypot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/freak3dot","download_url":"https://codeload.github.com/freak3dot/smart-honeypot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222251963,"owners_count":16955934,"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","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"}},"keywords":[],"created_at":"2024-07-31T17:00:56.580Z","updated_at":"2024-10-30T15:31:29.507Z","avatar_url":"https://github.com/freak3dot.png","language":"PHP","funding_links":[],"categories":["Honeypots","\u003ca name=\"honeypots\"\u003e\u003c/a\u003e Honeypots","\u003ca id=\"a53d22b9c5d09dc894413453f4755658\"\u003e\u003c/a\u003e未分类"],"sub_categories":[],"readme":"smart-honeypot\n==============\n\nPHP Script demonstrating a smart honey pot.\n\n\nGettings Started\n---------------\n\n1. Download the latest release.\n2. Choose one of the forms: simple-form.php, hardened-form.php or bootstrap-form.php (simple-form.php is intended as a simple way to understand the script only. It is not intended for use in production.)\n3. Set the contants\n    1. Set the $salt. I recomend http://www.sethcardoza.com/tools/random-password-generator/ as a quick tool to get some random stuff to put in there.\n    2. Set $recipients to a comma seperated list of emails (as accepted by php mail function)\n    3. Set $senderName. This will be included in the from address of the email.\n    4. Set $sender. This is the email address where the form originates. Typically something like noreply@example.com.\n    5. Set $subject. This is the email subject.\n4. Modify the form to include the fields you need.\n     1. `action` defaults to the current script address\n     2. `method` should remain set at post. Changing this will cause the form not to send emails.\n     3. `fields` is an array of inputs (and form elements) that you would like in your form.\n        * You can use the following form elements: `text`, `url`, `email`, `number`, `phone`/`tel`, `checkbox`, `file`, `textarea`, `select`, and `submit` \n        * The last form input should always be the `submit`.\n5. Put the form on your server.\n6. Test the form. Because, you could break something when you set the above. This especially applies to the `fields`.\n\n\n\nForm Elements\n-------------\n\nEvery form element is expected to have a `name` and `id`. The script may throw errors if these values are not set.\nThe text based inputs allow you to set a `placeholder` and default `value`. I have tried to make these names intuitive and based on the HTML input attributes.\n\nTo make an element required, simply add `required =\u003e true`.\n\n#### text ####\n\nSupports `name`, `id`, `value` and `placeholder`. \n\n#### url ####\n\nSupports `name`, `id`, `value` and `placeholder`. \n\n#### email ####\n\nSupports `name`, `id`, `value` and `placeholder`. \n\n#### number####\n\nSupports `name`, `id`, `value` and `placeholder`. \n\n#### phone ####\n\nSupports `name`, `id`, `value` and `placeholder`. \n\nThere is no _validation_ on a phone number.\n\n#### tel ####\n\nSynonym of phone. See above.\n\n#### checkbox ####\n\nSupports `name`, `id`,  and `value`. \n\n#### file ####\n\nSupports `name` and `id`.\n\nThere is no _validation_ on a file field. However, if you use a file file the enctype will be set on the form automatically.\n\n\n#### textarea ####\n\nSupports `name` and `id` and default `value`. Does *not* currently support rows and cols.\n\n#### select ####\n\nSupports `name`, `id`, default `value`. The default `value` set on the select will be selected in the options array.\n\nYou can specify the `options` as value =\u003e display array. The value will be used as the value on the option and the display will be shown to the end user.\n\nIn the hardened-form and the bootstrap-form, the script will ensure that the user submited a valid choice from the options.\n\n#### submit ####\n\nRequired final element.\n\n\nUnsupported Form Elements\n-------------------------\n\n#### radio ####\n\nRadio buttons are tricky to implement under this model due to the use of the same name across radios. They will be added at some point. Currently, using `radio` will trigger and exception.\n\n#### range ####\n\nHTML5 added range as a possible input type. It appears to be pretty well supported accross browser. Having never used it or seen it in use on a website, I did not ad it to this script. Using `range` will trigger and exception.\n\n\nTodos\n-----\n\n#### Testing ####\nI last left off having written this script and getting to a good stopping point. I need to do some more testing.\n\n#### jQuery Validaton Plugin ####\n\nI wrote some server side validation and would like to extend that to some client side validation. The hardened-form and bootstrap-form should both dynamically generate jQuery to validate the form client side.\n\n#### Bootstrap ####\n\nThere are references to bootstrap in the code and this readme. I plan to add a bootstrap-form script. It is dependent on testing the hardened-form and adding jQuery validation to the hardened-form.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreak3dot%2Fsmart-honeypot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffreak3dot%2Fsmart-honeypot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreak3dot%2Fsmart-honeypot/lists"}