Можно ли взломать javascript?

Я знаком с термином взлома. Хотя я никогда не стану одним из тех хакеров, которые обманывают людей или создают проблемы, я считаю, что это важный аспект, который должен быть способен любой человек, который называет себя программистом, поскольку он в основном касается решения проблем. Но как это работает? Когда эти люди взламывают игры или веб-сайты или парень, который взломал сони, они используют программирующий langauge, такой как ANSI C или С++ или сборка. Предполагая, что они используют язык программирования, можно ли использовать javascript для взлома так же, как вы использовали бы любой другой язык для взлома. Кроме того, что вам нужно сделать, чтобы взломать тоже. Я просто хочу знать, как это работает, и теория, лежащая в основе всего этого.

Ответы

Ответ 1

Взлом уникален каждый раз. Использование некоторых типов уязвимости не требует какого-либо конкретного языка вообще. Иногда вы взламываете все, что угодно, на любом языке или форме, которые вы найдете. Иногда необходимо автоматизировать часть процесса, например взлом пароля, для которого вы можете использовать любой язык, который вам нравится.

Взлом коммерческой игры обычно включает в себя изучение своего дизассемблированного машинного кода, выяснение, какая часть делает CD или лицензионный чек, и хирургическое замещение нескольких байты кода, так что проверка пропускается.

Взлом веб-сайта обычно связан с обнаружением какой-то небольшой неуклюжий со стороны его разработчиков, что позволяет просматривать конфиденциальные данные или разрешать выполнение пользовательского кода, если он не дезинформирует данные должным образом. SQL-инъекция является общим недостатком, когда значения, отправленные в базу данных, не защищены должным образом в кавычках ( "..." ), и поэтому вы можете давать значения которые выходят из кавычек, чтобы выполнять свои собственные команды. Межсайтовый скриптинг - это тип взлома, который использует JavaScript: если веб-сайт слепо принимает параметры из URL-адреса или представленных данных формы и отображает их на страницы без безопасного кодирования их в виде текста (с тревогой распространены), вы можете предоставить тег <script> для выполнения на этой странице. Причинение кому-либо посещения такого URL-адреса позволяет выполнять скриптовые действия от их имени. Ввод кода также возможен на стороне сервера с помощью PHP (или Perl или аналогичного), если неактивный код дает доступ к eval-like или, если неверная конфигурация сервера позволяет пользователю загружать файлы, которые будут интерпретироваться сервером как скрипты.

Взлом операционной системы или серверной программы удаленно может использовать ошибки при обработке сетевых команд. Неправильное обращение с некорректными сетевыми командами может привести к ошибкам проверки подлинности пользователя или даже к прямому выполнению кода, представленного в сетевом пакете, например, при переполнении буфера .

Ошибки в браузерах, плагинах и документах похожи друг на друга. То, что должно быть безопасным типом файла, может быть создано с нестандартными или сломанными значениями. Если программист забыл безопасно обрабатывать эти случаи, их часто можно использовать, чтобы избежать нормальных пределов типа файла.

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

Слабое или плохо реализованное шифрование может допускать грубое принудительное декодирование зашифрованных данных или паролей. Необязательное шифрование позволяет напрямую прослушивать данные. Отсутствие шифрования также позволяет передавать неавторизованные команды пользователю или серверу.

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

И иногда "хакинг" - это социальная инженерия. Например, представьте, что вы звоните в младший сотрудник и притворяетесь кем-то ответственным, чтобы обмануть их в раскрытии внутренней информации или reset пароля. Фишинг-письма - это распространенная полуавтоматическая форма социальной инженерии.

Включение в систему редко является одним из этих шагов. Это часто долгий процесс анализа системы, выявление мелких недостатков и использование их, чтобы увидеть, открыт ли полезный вектор атаки, а затем разветкиться от него, чтобы получить больший доступ.

Я никогда не делал этого, конечно.

Ответ 2

В javascript есть своего рода "хакерство". Вы можете запустить javascript из adressbar. Попробуйте ввести javascript: alert("hello"); в адресную строку на этом веб-сайте.

Таким образом, возможно захватить локальные переменные, например, файлы cookie.

Но поскольку javascript работает на стороне клиента. Людям придется использовать вашу рабочую станцию, чтобы получить доступ к вашим файлам cookie. Это метод, который можно использовать для изменения данных входа и притворяться кем-то другим (если сайт был плохо построен).

Если вы действительно хотите узнать больше об этом, есть несколько "уроков взлома javascript", которые можно найти здесь: http://www.hackthissite.org/pages/index/index.php p >

Ответ 3

Для начала вы на самом деле ссылаетесь на так называемое Cracking, а не на взлом. Этот вопрос, несомненно, будет закрыт, однако некоторые краткие наблюдения ^ _ ^

Cracking исходит из базового уровня понимания того, как создаются компьютерные системы, поэтому вы не узнаете, как взломать/взломать, вы узнаете о компьютерной инженерии, чтобы обратный инженер.

Популярной платформой для взлома является Linux; над окнами, например, как с открытым исходным кодом, поэтому опытные программисты могут писать свои собственные программы. Хотя опытные хакеры могут достичь своей цели на любой платформе.

Существует много уровней взлома, однако простая защита веб-сайтов - это мир, помимо взлома в Sony и столкнувшись с тюрьмой ^ _ ^

Возможно, вам понравится http://www.hackthis.co.uk, хотя

Ответ 4

Заметьте, есть разница между взломом и взломом. Ссылка: http://en.wikipedia.org/wiki/Hacker_(programmer_subculture)

Существует много эксплойтов, которые могут использовать javascript, возможно, наиболее известным из них будет межсайтовый скриптинг (XSS).

http://en.wikipedia.org/wiki/Cross-site_scripting

Чтобы следить за ответом Майкла, хорошо знать уязвимости в программном обеспечении и как люди используют эти уязвимости для защиты от них, однако взломать не то, что вы хотите знать.

Ответ 5

Это зависит от многих вещей, например: как структурирован html-код, например, я не знаю, можно ли взломать iframe, но обычная веб-страница будет относительна легко взломать. Другие программисты безопасности, как правило, делают передачу конфиденциальной информации через строку запроса url, тогда вы можете получить эти фрагменты данных и отправить их везде, где они используются в html-коде.

Там могут быть другие детали, но я не понимаю их сейчас.