1. 程式人生 > >python-簡單JavaScript加密的破解

python-簡單JavaScript加密的破解

目標:作者在進行模擬登陸時候發現原來簡單的密碼返回值是卻看不懂了,考慮到這種情況應該是進行了加密,這時候如何破解加密的程式碼尤為重要。
作者提交的密碼是:

123456qq.com //僅僅是舉例
104|122|51|49|53|56|49|51,//輸出加密過後的密碼

今天筆者分享是一個簡單的登陸時候密碼的加密,這裡直接分享加密的js程式碼以及破解過程,如果你不會尋找js程式碼,那麼你就去看我之前寫的如何尋找加密函式,哈哈哈哈,上程式碼:

if($("#ispassChang").val() != "0"){
	pass=encodeSTR($("#password").val());
}

首先看到這個程式碼的時候我們就會想到首先是找到encodeSTR

這個函式,尋找過程就不分享了直接上程式碼:

function encodeSTR(str) {  //str顯然是密碼傳輸過來
    var t = ""; // 宣告一個空字串
    for (var x = 0; x < str.length; x++) {  // 宣告一個x=0, 如果 x< 密碼的長度,執行下變的過程,x並加1
        a = str.charCodeAt(x); // 對迴圈的密碼進行獲取ascii值
        if (x != 0) {
            t += '|' // 如果變數x !=0 變數t+='|'
        }
        t += new Number(a).toString(10)  // 變數t+=str(a)
    }
    return t  // 最後返還的值便是加密過後的密碼
}

看到沒?上邊的加密是如此的簡單,只需要分析一下加密邏輯,通過python來實現即可。直接上程式碼

entry_password = ''
pass_word = '自己密碼'
i = 0
for i in range(len(pass_word)):
    s = ord(pass_word[i])
    if i != 0:
        entry_password += '|'
    entry_password += str(s)
    i += 1
print entry_password  // 即為密碼

好了分享結束了,是不是特別簡單?哈哈哈 當然你也可以用筆者之前所寫的 execjs

進行破解。可以看之前筆者所寫的過程。

哈哈哈,分享一下吧:

# coding=utf-8
import requests
import execjs

infos = """
function encodeSTR(str) { 
    var t = ""; 
    for (var x = 0; x < str.length; x++) { 
        a = str.charCodeAt(x); 
        if (x != 0) {
            t += '|'
        }
        t += new Number(a).toString(10)  
    }
    return t  
}
"""
if __name__ == "__main__":
   import execjs
   r = execjs.compile(infos)
   result = r.call('encodeSTR','123456').lower() // encodeSTR加密的函式,‘123456’密碼
   print result

分享結束咯,如有問題歡迎糾正。

相關推薦

python-簡單JavaScript加密破解

目標:作者在進行模擬登陸時候發現原來簡單的密碼返回值是卻看不懂了,考慮到這種情況應該是進行了加密,這時候如何破解加密的程式碼尤為重要。 作者提交的密碼是: 123456qq.com //僅僅是舉例 104|122|51|49|53|56|49|51,//輸出加密

Python 簡單加密和解密

今天來說說簡單的加密和解密吧,我們在PyCharm中開啟一個新的project,起名隨意,之後建立一個python file名字就叫做encryption.py吧. 首先我們知道在python中,ord()函式就是用來返回單個字元的ASCII值(0-255)或

使用python破解簡單JavaScript加密的網站

目標網站:http://ac.scmor.com/ 抓取內容: 第一步 分析這個網站使用什麼請求載入的,get,post,或者ajax非同步載入?大家都知道用fiddler抓包或者F12網頁進行檢視。在這裡筆者就截圖分享了。 第二步 檢視自己所需要的內

python+selenium十三:破解簡單的圖形驗證碼 python+selenium十三:破解簡單的圖形驗證碼

python+selenium十三:破解簡單的圖形驗證碼   此方法可破解簡單的驗證碼,如:  注:中文識別正在尋找辦法 安裝: 1、python3 2、Pillow 3、pytesseract 4、tesseract-o

python實現DES加密簡單案例

環境:python3.6 庫:pyDes from pyDes import des, CBC, PAD_PKCS5 import binascii # 祕鑰 KEY='mHAxsLYz' def

python實現RSA加密簡單案例

環境:python3.6 第三方庫:M2Crypto  這個庫windows上很難裝,linux上直接用pip install 首先獲取一對祕鑰,具體生產祕鑰方式百度上有線上工具。 然後將生成

如何用Python寫一個暴力破解加密壓縮包的程式

有些時候加密rar軟體經常會忘了密碼,但記得密碼的大概,於是乎用Python寫個程式來暴力破解吧: 首先要搞清楚如何用命令列來解壓縮,經研究,rar軟體解壓是用的unrar.exe,將這個程式拷貝到C:\windows,然後進入加密軟體包所在的資料夾,用命令列執行 下面的命

python——文字簡單可逆加密

其實很簡單,就是把一段文字每個字元都通過某種方式改變(比如加1) 這樣就實現了文字的加密操作,解密就是其逆運算 # -*-coding:utf-8 -*- import sys reload(sy

python+django+javascript+layer 簡單小demo檔案上傳

在經過上面的簡單的小部落格講解後,今天就把前端和後端的程式碼粗略的弄一下。大致的程式碼如下:  {# 上傳檔案的時候必須要在form標籤中新增屬性 enctype="multipart/form-data" #} <form method="POST" enct

javascript對頁面簡單加密和解密

最近看了幾個頁面,發現好多都是經過處理的。不過,裡面附帶著一段javascrpit處理加密的頁面。下面就簡單說說加密和解密的過程。一、加密1、將字串中的每個字元轉換為數字形式方法是 字串處理的方法 charCodeAt(index)charCodeAt() 方法可返回指定位置

C#, Java, PHP, PythonJavascript幾種語言的AES加密解密實現

博客 部分 結果 cat stx add 控制 res code 特別提示:本人博客部分有參考網絡其他博客,但均是本人親手編寫過並驗證通過。如發現博客有錯誤,請及時提出以免誤導其他人,謝謝!歡迎轉載,但記得標明文章出處:http://www.cnblogs.com/ma

python簡單筆記

針對 是的 機制 函數作為參數 編寫 usr 之間 r語 alt 叠代器 叠代是Python最強大的功能之一,是訪問集合元素的一種方式。 叠代器是一個可以記住遍歷的位置的對象。 叠代器對象從集合等第一個元素開始訪問,直到所有的元素被訪問結束,叠代器只能往前不會後退。 叠代器

簡單加密解密處理

length stat end socket通訊 上一個 規則 alt cnblogs 字符   今天一位小朋友通過郵箱向我發送一封求助信息。 內容大致如下: 您好!之前您寫的那個C#客戶端服務器程序運行成功,但能不能加上一個加密解密的函數,老師要求客戶端/服務器模式

Python的RSA加密和PBE加密

nbsp 信息 bytes 任務 競爭 對手 nco bsp join 最近在寫接口的時候,遇到了需要使用RSA加密和PBE加密的情況,對方公司提供的DEMO都是JAVA的,我需要用python來實現。 在網上搜了一下,python的RSA加密這塊寫的還是比較多的,但是PB

Python簡單網頁爬蟲

tab write open python2.x row browser mod err urlopen 由於Python2.x與Python3.x存在很的差異,Python2.x調用urllib用指令urllib.urlopen(), 運行時報錯:AttributeErr

LintCode Python 簡單級題目 鏈表求和

logs ons 高精度 text odin 追加 數字 nbsp accordion 原題描述: 你有兩個用鏈表代表的整數,其中每個節點包含一個數字。數字存儲按照在原來整數中相反的順序,使得第一個數字位於鏈表的開頭。寫出一個函數將兩個整數相加,用鏈表形式返回和。 您

python簡單模擬:把樹存儲在數據表中

數據庫 __main__ __name__ com clas list lis 數據表 name 在數據庫中建立一個表,有Id, fatherId, value 三個字段,就可以存儲一個樹。 如何把該表中的數據以樹的形式呈現出來,下面小弟用python簡單模擬一下。 初學p

python簡單爬數據

import agen model include urlencode port horizon 如果 nec 失敗了,即使跟Firefox看到的headers,參數一模一樣都不行,爬出來有網頁,但是就是不給數據,嘗試禁用了js,然後看到了cookie(不禁用js是沒有co

LintCode Python 簡單級題目 112.刪除鏈表中的重復元素

末尾 元素 簡單 remove def toggle strong 留下 logs 題目描述: 給定一個排序鏈表,刪除所有重復的元素每個元素只留下一個。 您在真實的面試中是否遇到過這個題? Yes 樣例 給出 1->1->2->null,

LintCode Python 簡單級題目 451.兩兩交換鏈表中的節點

超時 size 上一個 ont nodes fin oot ron 單純 題目描述: 給一個鏈表,兩兩交換其中的節點,然後返回交換後的鏈表。 您在真實的面試中是否遇到過這個題? Yes 樣例 給出 1->2->3->4, 你應該返