250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- binding
- LifeCycle
- Flutter
- TEST
- Dialog
- intent
- 앱바
- 앱
- viewmodel
- Navigation
- DART
- Kotlin
- 계측
- livedata
- Compose
- ScrollView
- Button
- CustomScrollView
- activity
- textview
- android
- Coroutines
- 안드로이드
- data
- scroll
- textfield
- 테스트
- drift
- tabbar
- appbar
Archives
- Today
- Total
Study Record
[암호 프로그래밍] 사전파일을 이용한 공격 프로그램 - ccrypt 본문
728x90
☞ 공격할 암호화된 파일 생성 - /test/file1.txt.cpt
# cd /test
# cp /etc/hosts file1.txt
# ccrpyt -e file1.txt
암호 : soldesk1.
☞ 사전파일 생성 - /python/dict/dict.txt
- https://laustudy.tistory.com/99
# mkdir -p /python/dict
# chmod -R 777 /python
# tree -C /python
# cd /python/dict
# cat << EOF > dict.txt
user01
user02
admin
soldesk1.
administration
EOF
☞ 공격 프로그램
(shell)
# vi /python/attack_ccrpyt.sh (# chmod +x /python/attack_ccrpyt.sh; ./python/attack_ccrypt.sh)
#!/bin/bash
DictionaryFile='/python/dict/dict.txt'
EncFile='/test/file1.txt.cpt'
DecFile=$(basename $EncFile | sed 's/.cpt$//')
crack() {
ccrypt -c -K $i $EncFile > $DecFile
echo "===== Decrypted File Contents ====="
cat $DecFile
}
for i in $(cat $DictionaryFile)
do
ccrypt -c -K $i $EncFile >/dev/null 2>&1
if [ $? -eq 0 ] ; then
echo "[ OK ] Key found => $i"
echo
crack
break
else
echo "[ FAIL ] Key not found => $i"
fi
sleep 1
done
(python)
#!/usr/bin/python3
import os
def main():
dict = open('/python/dict/dict.txt')
encfile = '/test/file1.txt.cpt'
decfile = 'tmpDecfile.txt'
for word in dict.read().split('\n'):
cmd = 'ccrypt -c -K ' + word + " " + encfile + ' > ' + decfile + " 2>/dev/null"
if os.system(cmd) == 0:
# success
print("[ OK ] Key found => " + word)
print("===== Decrypted File Contents =====")
decfileOp = open(decfile)
print(decfileOp.read())
decfileOp.close()
break
else:
# fail
print("[ FAIL ] Key not found => " + word)
CMD = "rm -rf " + decfile
os.system(CMD)
dict.close()
pass
if __name__ == '__main__':
main()
728x90
'암호 > 프로그래밍' 카테고리의 다른 글
[암호 프로그래밍] RSA를 이용한 암/복호화 , 서명 (0) | 2021.12.08 |
---|---|
[암호 프로그래밍] 인코딩/디코딩 프로그램 (0) | 2021.12.07 |
[암호 프로그래밍] AES 암호화/복호화 프로그램 (0) | 2021.12.03 |
[암호 프로그래밍] 3DES-CBC 암호화 / 복호화 프로그램 (0) | 2021.12.02 |
[암호 프로그래밍] 사전파일을 이용한 공격 프로그램 - gpg (0) | 2021.12.02 |