Сценарий автоматического входа в систему для веб-сайта на компьютере с Windows?

Я видел, что у какого-то парня был файл (думаю, командный файл). Нажав на пакетный файл, он смог войти на несколько сайтов. (Возможно, это было сделано с помощью VB.)

Я искал такой скрипт в Google, но не нашел ничего полезного.

Я немного знаю C++ и UNIX (также немного HTML и JavaScript). Я не знаю, можно ли это сделать на компьютере с Windows, используя эти языки, но даже если бы это можно было сделать, я думаю, что это было бы сложно по сравнению с VB или C## или некоторыми другими языками высокого уровня.

Я научился открывать несколько сайтов, используя базовые пакетные команды Windows, заключенные в пакетный файл, например:

start http://www.gmail.com
start http://stackoverflow.com

Но все же я не могу понять, как на самом деле щелчок по командному файлу поможет мне войти на сайты, даже не вводя имя пользователя и пароль.

Нужно ли для этого начинать изучение Visual Basic, .NET или пакетного программирования Windows?

Еще один момент: могу ли я также использовать его для входа на удаленные рабочие столы?


person munish    schedule 06.06.2011    source источник
comment
Пожалуйста, отредактируйте мои теги, чтобы заинтересованные люди могли это видеть. Я совершенно не знаю, к какой области должен принадлежать этот вопрос, т.е. С++, окна, веб-сайт, vbscript, unix, javascript, html и т. д.   -  person munish    schedule 06.06.2011
comment
Я хотел этого, потому что это очень раздражает каждый день входить в набор сайтов и каждый раз заполнять имя пользователя и пароли .... Установлено, если что-то можно сделать для автоматизации, это было бы хорошо.   -  person munish    schedule 06.06.2011


Ответы (5)


Из термина «автоматический вход» я полагаю, что безопасность (защита паролем) здесь не имеет ключевого значения.

В качестве решения можно использовать закладку JavaScript (идея заимствована из хорошей игры, опубликованной на сайте M&M's DK< /а>).

Идея состоит в том, чтобы создать файл javascript и сохранить его локально. Он должен выполнять ввод данных для входа в зависимости от текущего адреса сайта. Просто пример с использованием jQuery:

// dont forget to include jQuery code
// preferably with .noConflict() in order not to break the site scripts
if (window.location.indexOf("mail.google.com") > -1) {
    // Lets login to Gmail
    jQuery("#Email").val("[email protected]");
    jQuery("#Passwd").val("superSecretPassowrd");
    jQuery("#gaia_loginform").submit();
}

Теперь сохраните это как login.js

Затем создайте закладку (в любом браузере) с этим (в качестве) URL-адресом:

javascript:document.write("<script type='text/javascript' src='file:///path/to/login.js'></script>");

Теперь, когда вы зайдете в Gmail и нажмете на эту закладку, вы автоматически войдете в систему с помощью своего скрипта.

Умножьте блоки кода в своем скрипте, чтобы таким же образом добавить больше сайтов. Вы даже можете комбинировать его с функциональностью window.open(...), чтобы открывать больше сайтов, но это может усложнить включение скрипта.

Примечание. Это только иллюстрирует идею и требует большой дальнейшей работы, это не полное решение.

person mkilmanas    schedule 06.06.2011
comment
Вы пробовали предложенную мной ссылку? Они используют тот же принцип (возможно, я ошибаюсь с частью document.write, они используют более подходящую часть document.createElement), и это работает. И, как я уже сказал, это не полное решение — это всего лишь набросок, чтобы дать вам представление о том, как это можно сделать. - person mkilmanas; 06.06.2011
comment
Я получаю сообщение об ошибке URI источника ‹script› не разрешен в этом документе: Любые идеи, почему это так? - person Sanju Rao; 21.01.2019
comment
Это также можно запустить в Tampermonkey/Greesmonkey. - person MR_AMDEV; 22.01.2019
comment
@SanjuRao - возможно, стандарты безопасности браузера улучшились с 2011 года. Это своего рода взлом (в основном XSS), поэтому я не удивлен, что сейчас это может быть запрещено. - person mkilmanas; 23.01.2019
comment
Прохладно. Есть ли другой способ реализовать это? Меня очень раздражает каждый раз вводить учетные данные пользователя для моей разработки. - person Sanju Rao; 24.01.2019
comment
Я бы порекомендовал использовать какой-нибудь менеджер паролей с плагином для браузера. Мне больше всего нравится lastpass.com. Он выполняет автозаполнение формы входа, но также вы можете безопасно хранить свои фактические пароли в браузерах и даже на устройствах. - person mkilmanas; 25.01.2019

Код ниже делает именно это. Ниже приведен рабочий пример входа в игру. Я сделал аналогичный файл для входа в Yahoo и на форум kurzweilai.net.

Просто скопируйте форму входа из исходного кода любой веб-страницы. Добавьте значение = «ваше имя пользователя» и значение = «ваш пароль». Обычно элементы -input- в исходном коде не имеют атрибута value, и иногда вы увидите нечто подобное: value=""

Сохраните файл как html на локальном компьютере, дважды щелкните его или создайте файл bat/cmd, чтобы запускать и закрывать их по мере необходимости.

    <!doctype html>
    <!-- saved from url=(0014)about:internet -->

    <html>
    <title>Ikariam Autologin</title>
    </head>
    <body>
    <form id="loginForm" name="loginForm" method="post"    action="http://s666.en.ikariam.com/index.php?action=loginAvatar&function=login">
    <select name="uni_url" id="logServer" class="validate[required]">
    <option  class=""  value="s666.en.ikariam.com" fbUrl=""  cookieName=""  >
            Test_en
    </option>
    </select>
    <input id="loginName" name="name" type="text" value="PlayersName" class="" />
    <input id="loginPassword" name="password" type="password" value="examplepassword" class="" />
    <input type="hidden" id="loginKid" name="kid" value=""/>
                        </form>
  <script>document.loginForm.submit();</script>       
  </body></html>

Обратите внимание, что -script- это просто -script-. Я обнаружил, что нет необходимости указывать, что это JavaScript. Это работает в любом случае. Я также обнаружил, что голая версия, которая содержит только два поля ввода: имя пользователя и пароль, также работает. Но я оставил скрытое поле ввода и т. д. на всякий случай. Почта Yahoo имеет много скрытых полей. Некоторые из них связаны с шифрованием паролей и подсчитывают попытки входа в систему.

Предупреждения системы безопасности и другие функции, такие как Mark of the Web для обеспечения бесперебойной работы в IE, объясняются здесь:

http://happy-snail.webs.com/autologintogames.htm

person qwerty jones    schedule 18.03.2012
comment
Возможно, вам придется изменить поля href= и action=, чтобы включить полный URL-адрес. По крайней мере, action= из <form> должен иметь полный URL-адрес, если вы размещаете форму входа локально. - person Mark Lakata; 15.07.2016

Я использовал ответ @qwertyjones для автоматизации входа в Oracle Agile с общедоступным паролем.

Я сохранил страницу входа как index.html, отредактировал все поля href= и action=, указав полный URL-адрес Agile-сервера.

Ключевая строка <form>, которую необходимо изменить с

<form autocomplete="off" name="MainForm" method="POST"
 action="j_security_check" 
 onsubmit="return false;" target="_top">

to

<form autocomplete="off" name="MainForm" method="POST"
 action="http://my.company.com:7001/Agile/default/j_security_check"   
 onsubmit="return false;" target="_top">

Я также добавил этот фрагмент в конец <body>

<script>
function checkCookiesEnabled(){ return true; }
document.MainForm.j_username.value = "joeuser";
document.MainForm.j_password.value = "abcdef";
submitLoginForm();
</script> 

Мне пришлось отключить проверку файлов cookie, переопределив функцию, которая выполняла проверку, потому что я размещал это из XAMPP и не хотел с этим иметь дело. Вызов submitLoginForm() был вдохновлен проверкой функции keyPressEvent().

person Mark Lakata    schedule 15.07.2016

Вы можете использовать Autohotkey, загрузите его с: http://ahkscript.org/download/

После установки, если вы хотите открыть веб-сайт Gmail при нажатии Alt+g, вы можете сделать что-то вроде этого:

!g::
Run www.gmail.com 
return

Дополнительная ссылка: горячие клавиши (мышь, джойстик и сочетания клавиш)

person Muhammad_Daka    schedule 22.03.2014

Что ж, это правда, что мы можем использовать Vb Script для того, что вы намеревались сделать. Мы можем открыть приложение через такой код, как Internet Explorer. Мы можем перейти на сайт, который вы хотите. Позже мы можем проверить имена элементов текстовых полей, для которых требуется имя пользователя и пароль; можно установить то и то Войти. Он отлично работает с использованием кода.

Никакого ручного взаимодействия с сайтом. И в конечном итоге вы войдете в систему, просто дважды щелкнув файл.

Для начала:

Set objIE = CreateObject("InternetExplorer.Application")

Call objIE.Navigate("https://gmail.com")

Это откроет экземпляр Internet Explorer и перейдет к Gmail. Остальное вы можете изучить и применить.

person grd    schedule 07.10.2015