【Excelゆる話】"意味が分かると怖いマクロ"を部長が実行してしまいました…

  Рет қаралды 128,171

わちょんのゆっくりIT

わちょんのゆっくりIT

Күн бұрын

Пікірлер: 110
@永畑リョウ
@永畑リョウ 2 жыл бұрын
VBAを学ぶ前にも見たことがあって、その時は全然意味わかんかったんだけど今は意味がわかることに感動している。
@まるまる-p7c
@まるまる-p7c Жыл бұрын
これ見ると、パスワードに英数字どっちも入れろとか大文字入れろとかの重要性がわかる。
@ぷにょーん
@ぷにょーん 3 жыл бұрын
数字4桁程度のパスワードなら、いざという時にこうやって簡単にこじ開けられるから、ある意味便利だよ。
@じょえさん
@じょえさん 2 жыл бұрын
ブルートフォースでなんとかなるかな。 一回あたりの処理が大したことなかったらcudaで20分ぐらいで開くかもね
@v24tn45n8u
@v24tn45n8u 2 жыл бұрын
簡単...?
@まさひろ-q2v
@まさひろ-q2v 3 жыл бұрын
ランダムでパスワードを作成して閉じるプログラム。こんなプログラムを組む人に脱帽です。 シンプルなコードですが、驚異の破壊力ですね!
@kusamochi_mochimochi
@kusamochi_mochimochi 3 жыл бұрын
半年前はSUMすらわかってなかった私ですが、 このチャンネルを見てから電卓を使わずに家計簿をつけられるようになりました
@NonomGpm
@NonomGpm 3 жыл бұрын
強いて挙げるなら、開くのに成功した時のパスワードをどこかに保存しておくといいかも?
@サンナナ-t2p
@サンナナ-t2p 3 жыл бұрын
面白かったです❗️ vba初心者なので、感心しました!
@うめはち
@うめはち 3 жыл бұрын
後半のコードもパスワード解読だから、 地味にやばいな…。つまり…、 前半…悪用厳禁 後半…悪用厳禁 この動画全体…悪用厳禁!
@zerocode9660
@zerocode9660 3 жыл бұрын
最適解じゃないかな、少なくともVBA上では。 アプリの仕組み上excelで実行させる他ないのでVBA一択になるだろうし、VBAに便利なメソッドが用意されてそうには無いし。ブルートフォースが一番。 accessからの外部接続とかならもうちょいあれこれ出来るかも?
@しんくろう-y5j
@しんくろう-y5j 2 жыл бұрын
なるほど。これがVBAにおける一種のブルートフォース攻撃なんですね。わかりました😅
@なかさん-b3c
@なかさん-b3c 3 жыл бұрын
意味が解った途端くっそ恐ろしいと感じた…
@Shippur010
@Shippur010 3 жыл бұрын
報復にエクセル資料にコレとボタンを追加しておけば大惨事になるに違いない ボタンの名前「保存する」
@このは-n2w
@このは-n2w 3 жыл бұрын
部長ほんとすき
@野端啓司
@野端啓司 3 жыл бұрын
部長の”凄み”が分かる動画。 実際この人パソコン素人じゃ無いだろ・・
@v_horse05826
@v_horse05826 3 жыл бұрын
なんかアレですね、ドラマでよく見るハッキングみたいw
@五月雨-e1c
@五月雨-e1c 3 жыл бұрын
昔ちょっとだけ齧った程度の知識じゃ理解できませんでした…でもやっぱりVBAって面白い
@自転車乗り-r6w
@自転車乗り-r6w 2 жыл бұрын
vbaわかんないけど多分 コード自体は このファイルに※正確には対象指定 パスワードとして 1~9999のどれかを設定し ファイルを閉じる (確認メッセージ出さない設定付き) って内容で それを実行したからファイルにパスワードかかっちゃったので それを 1~9999総当りでパスワード入力 ってやったってことだと思います
@kozawa936
@kozawa936 3 жыл бұрын
機密情報(22KB)
@dgrgasshurn
@dgrgasshurn 3 жыл бұрын
22KB(ポケモンランクマッチシーズン24のポケモンシングル対応使用率ランキング)
@カーピィの偽物
@カーピィの偽物 3 жыл бұрын
つまり機密情報=ポケモンのランキング.....はっ!もしや部長の会社はニンテ
@忍者86
@忍者86 2 жыл бұрын
これにアルファベット,記号を加えるとえらい組み合わせ&コードの長さになりますよね❓
@照焼-o9m
@照焼-o9m 2 жыл бұрын
VBAはよくわからないけど、他の言語使ってるとなんとなく挙動わかるね
@UltraChuken
@UltraChuken 2 жыл бұрын
こんなに簡単にパスワードが解読されてしまうのも 最初のパスワード設定が1~9999と簡単だったから。 もし日本語や記号とかもパスワードに使える文字に入ってきたら もっと大変だったかも。
@吸血鬼ヴァート
@吸血鬼ヴァート 2 жыл бұрын
ɠѠ䃠瀷 とかだったら、大変でしたね...
@かるみあ-m7e
@かるみあ-m7e 2 жыл бұрын
パスワードが「0000」の可能性……
@冷やし中華始めませんか-n2n
@冷やし中華始めませんか-n2n 2 жыл бұрын
Excelのパスワードってバイナリエディタで編集すると簡単に変更できるんじゃなかったっけ…? 0000ってパスワードを設定したエクセルのハッシュ値で置き換えると、置き換えられたエクセルのパスワードも0000になるみたいな…
@zerocode9660
@zerocode9660 2 жыл бұрын
なる。office全般それ。正直何とかして欲しい。
@kino785
@kino785 2 жыл бұрын
勉強になったけど、ところでなんでそんなこと知ってるんや?そんな有名な話なんか?
@ななしのごんべい-w7i
@ななしのごんべい-w7i 2 жыл бұрын
尼○市職員「こ、これだー!」
@hisanak3071
@hisanak3071 2 жыл бұрын
開けるスクリプトを渡さず閉じてしまおう
@user-kr6vc6px5r05
@user-kr6vc6px5r05 2 жыл бұрын
乱数は1つだけだし、 パスワードは数字だけだから楽よね。
@lgchannel0918
@lgchannel0918 3 ай бұрын
とりあえずパスワードがなんだったのか分かるようにメッセージ出すくらいしておけば良さそう笑
@tashi3144
@tashi3144 2 жыл бұрын
for to next使わなくてもon error gotoで良いのでは?
@ja5921
@ja5921 2 жыл бұрын
For Each wb In Application.Workbooksでそれを実行したら一種のテロですねw
@タイガース-v1p
@タイガース-v1p 2 жыл бұрын
と言うことはパスワードがかかってる、エクセルファイルがあり、特定の者以外パスを知っていなくても、解除可能ってことか。
@chan.w5370
@chan.w5370 2 жыл бұрын
授業でExcelのマクロを習ってる?んだけど、その担当の先生が「聞くより、自分で調べろ」って毎回怒ってくる。授業って何ですか?教えて下さい……
@pickupline28
@pickupline28 2 жыл бұрын
あー…… 先生の言うこと、分かる気はする…… 結局、プログラムを書くようになると、ある程度「自分でググって情報をかき集めて、頭の中で再構築して正解に近づく能力」も大事になってくるから、その力を身につけろって意味かな?
@tokuyon2000
@tokuyon2000 2 жыл бұрын
@@pickupline28 先生「どうやって調べたらいいと思う?」 →生徒回答 →「それで調べてみなさい」or「こういう検索のしかたの方がよいだろう」 ってな流れなら生徒に考えさせることもできるし授業としても有意義なものになるかな?
@02359
@02359 2 жыл бұрын
独学でC++とか学んできた人だから先生の気持ちも少しはわかるけど だけどやはり学校だから調べ方教えるなりDocsの見方教えるなりしないといけない気がもする。金払ってるんだから聞かないと無駄じゃない?
@忍者86
@忍者86 3 жыл бұрын
すっ凄すぎる‼️😱もはやExcelを超越してWindowsを動かすプログラムになってしまった😓 もはや、意味を理解することまでしか追従出来ない😑
@dmcreatorjapan
@dmcreatorjapan 2 жыл бұрын
これ、つまり数字のパスワードって簡単に解読されてしまうってことか。 だから最近は数字、アルファベット、アルファベットでも1文字は大文字など組み合わせないと登録できなくなってるんやな。
@おけけ資格勉強中
@おけけ資格勉強中 Жыл бұрын
アルファベット込みパスワードファイルを開封するVBAもお願いしたいです
@1826クロ
@1826クロ 3 жыл бұрын
Openメソッドの一段下に If Err.Number 0Then Exit Sub End If Err.Number = 0 と入れたら途中で開いた後に余計なことしないから少しだけ終わるの早くなるかな?
@reinejy
@reinejy 3 жыл бұрын
それだとエラー出たら(パスワード違っていたら)終わっちゃいますよ やるんならOpenメソッドの下に If err.Number = 0 Then '開いたときにエラーが出なかったら↓の処理 Debug.Print "Password:= " & i Exit Sub      ’このForのループの後に処理を入れたかったらExit Forで End If Err.Clear       '次のエラーが発生する前にいったんクリアする みたいな感じで、開いたらイミディエイトウィンドウにパスワードを記録して終了するって感じ
@zerocode9660
@zerocode9660 3 жыл бұрын
開いたら止めたいなら例えば下記の様にすれば良い。 for i = 1 to 9999 err.clear workbooks.open filename:=fn,password:=i if err.number = 0 then exit for next
@min-owbdu
@min-owbdu 2 жыл бұрын
え…VBAってこんなにクセつよいん…?
@タイガース-v1p
@タイガース-v1p 2 жыл бұрын
なるほど、パワハラ上司への嫌がらせはこうするのか
@lockg.g.6193
@lockg.g.6193 2 жыл бұрын
4桁で良かったね。 一日あれば余裕。
@rarchan5944
@rarchan5944 2 жыл бұрын
3:13 理不尽すぎぃ!
@ccorn4221
@ccorn4221 2 жыл бұрын
部長、絶対部下を試してるよな?
@0813kiki
@0813kiki 2 жыл бұрын
xlsxの拡張子をzipとかに変えて、中のファイルをごにょごにょすればどんなパスワードを書かれてても消せますね。
@Kurono_Roxu
@Kurono_Roxu 3 жыл бұрын
昔、パスワードを無理やり上書きする方法があったなぁ…… xlsmでも有効か分からないけどw
@assassin-hl5do
@assassin-hl5do 3 жыл бұрын
1から順にではなく、ランダムでパスワード入力出来たら速いんですかね?
@renhoney2048
@renhoney2048 2 жыл бұрын
可能だろうけど同じ数をPassとして試しちゃう可能性がある(てか多分そうなる)から早くはならないとおもう。
@七福えると
@七福えると 3 жыл бұрын
エラーじゃなかったらメッセージボックスで表示したら良さそう
@革量
@革量 3 жыл бұрын
因みにですが、この事象になってもExcelファイルを構成するxml内に書かれているパスワードのコード消すと普通に使えますよ。
@NankotsuKomb
@NankotsuKomb 2 жыл бұрын
読み取りパスワードでは使えない気が
@reinejy
@reinejy 2 жыл бұрын
それはシート保護のパスワード
@warokihami
@warokihami 2 жыл бұрын
意味がわかると怖いというか、意味不明過ぎて(明らかな悪意でコードが書かれていて)怖い。
@katsukun1958
@katsukun1958 2 жыл бұрын
Dim cells as Integer と打って実行すると、欠陥を持ったxlsmファイルに生まれ変わります。 (コマンド「cells」をユーザ変数に定義してしまったからーです) Dim Count as Integer もやりがち。(1,2,3と数えるためのユーザー変数として使おうとして墓穴を掘る)
@rina11922
@rina11922 2 жыл бұрын
まぁあえていうならこの状態でロック解除できても、パスワードわからないんじゃないかな? 新しいシートのA1にiを記入しておくといいんじゃないかな
@海苔拾い
@海苔拾い 2 жыл бұрын
再保存する時にpw削除
@nnenko183
@nnenko183 2 жыл бұрын
これ4桁数字とわかってたらあっさり総当たりされそうだけどわからん状態(英数記号入れて長さ上げて何回かループ入れることで生成とか)でやられたり総当たり対策やられたらまあ・・・きちいなぁ
@Kyadellack
@Kyadellack 2 жыл бұрын
確か4桁の数字の中にアルファベット1文字加えられただけで10倍以上時間かかるとかって聞いた事あるな…
@labi3230
@labi3230 2 жыл бұрын
@@Kyadellack 数字は0〜9の10パターンしかないんで10×10×10×10=10,000通りで済みますが アルファベットを加えると10+26=36パターンになりますからね…どの桁がアルファベットかも分からないので 36×36×36×36=1,679,616通り
@吸血鬼ヴァート
@吸血鬼ヴァート 2 жыл бұрын
もしUnicodeの一覧からランダムってなったらやばい。𐎰や≩とかから選ばれるんでしょ?
@nnenko183
@nnenko183 2 жыл бұрын
@@吸血鬼ヴァート それは入力が困難なのでパスワードとして実用的かどうかが問題になりますね
@nnenko183
@nnenko183 2 жыл бұрын
困難というか面倒
@200xpentium5
@200xpentium5 2 жыл бұрын
ブルートフォース攻撃ですね... まあ、これが通用するのは限界がありますけどね。 4桁パスワードなら最悪10,000回,平均5,000回程度の試行で開けられますし。
@deanna6164
@deanna6164 2 жыл бұрын
なぜ4桁パスワードで最悪1000回の試行なんですか?
@200xpentium5
@200xpentium5 2 жыл бұрын
@@deanna6164 素で間違えた。10,000通りですね。
@TV-tu4mw
@TV-tu4mw 2 жыл бұрын
Pythonの時の直感?みたいなので一つ分かれば大体分かる(読めるだけ)
@user-xt6go9sz1o
@user-xt6go9sz1o 2 жыл бұрын
4桁のパスワード総当たりでも10分かかるのか……!?
@めんつゆは便利
@めんつゆは便利 3 жыл бұрын
あ〜、cmd にも凶悪なコマンドあるなぁ。cドライブを即時消去するやつ。
@takumih7276
@takumih7276 2 жыл бұрын
VBAでできること
@三浦由章-f8j
@三浦由章-f8j Жыл бұрын
シーター駐車場代⇒が鵜「」コミュニケーション「」「54」green=sター シーター
@犬死丸
@犬死丸 2 жыл бұрын
コンピュータ触ったらいかん人種やな
@たーゆぎ
@たーゆぎ 3 жыл бұрын
PADで力押しを想像してたけど違ったw
@Scr_MIYUKINNGU
@Scr_MIYUKINNGU 3 жыл бұрын
プログラマー「ん?え?あ?んーえー総当たり攻撃で無理矢理パスワード解除するか。」 ド素人「ああああああああああ!もうこれはファイルを消してやり直すしかない…」 玄人「…総当たり攻撃っての知ってるけどやり方わかんない。困った☆」 わちょんのゆっくりIT(偏見)「よし。動画ネタにするか。処理はまた今度。」 ワイ「明日本気出すからさぼります。」 サボり魔(ネタ)「1年後に本気出すので今年はさぼります。」 ちなみに総当たり攻撃は別名ブルートフォース攻撃とも言います。
@piG65a
@piG65a 2 жыл бұрын
終了時に自動実行するようにしておくと。
@shinya092424
@shinya092424 3 жыл бұрын
もっと早くできるかちょっと挑戦してみたけど、所詮俺も素人。 ダメだった。Application.ScreenUpdating = False(画面更新の停止)とApplication.Cursor = xlWait(マウスポインタの固定) くらいしか思いつかなかった。 そして全然早くならなかったwww
@キエリカ
@キエリカ 2 жыл бұрын
その辺りは画面更新等が発生しないと影響が無いですね。 一番簡単な短縮方法はファイルを開けても処理が継続されるので、開けたら処理を終了するようにすることではないでしょうか?
@02359
@02359 2 жыл бұрын
VC++は触れたことあるけどVBAは触れたことないなぁ
@tile_shirokuro
@tile_shirokuro 2 жыл бұрын
python使えば一瞬で終わる
@zerono.7760
@zerono.7760 2 жыл бұрын
これさ、アルファベット含んでたら詰みよね?
@ベベ-n3b
@ベベ-n3b 2 жыл бұрын
わかりやすく数字にしているだけで0~9、A~Zの総当たりにすれば大丈夫ですよ。 膨大な時間がかかりますけどね
@syunkunTrader
@syunkunTrader 2 жыл бұрын
kzbin.info/www/bejne/fHWxq2Wki82WnMU xlsまでは、Windows95でも動くようにダンプに近い形式になっていましたが、xlsxやxlsmになってからは、xml方式をzpi圧縮しているだけのファイルになっていますね。
@めひえる
@めひえる 2 жыл бұрын
エクセルのパスワードって無意味なんだね
@mato315
@mato315 2 жыл бұрын
無意味は言いすぎかと 物置の南京錠程度の意味はあるかと。
@galacticpretty
@galacticpretty 2 жыл бұрын
와따시와 간고쿠데쓰
@cookieheavy3044
@cookieheavy3044 2 жыл бұрын
マクロ無効で開く
@PASSWORD_123
@PASSWORD_123 2 жыл бұрын
zip変換して、PASSWORD解除すればいいんじゃね?
@まるり3016
@まるり3016 3 жыл бұрын
え・・・今回、目の前でコードを書いた状態で数字の4桁ランダムとか「さいよわ」なパスワードだからいけますけど、パスワードかかってるんだったら どんなコードが書かれてるかすらわかんないのでは? 普通にパスワードは文字列や下手したら特殊記号含めて、最低8文字とかがデフォじゃないですかね。 そもそも、こんな「ほぼなんの意味も使いみちもない」コード書く機会があるかな🙄
@ペリカンハイウェイ
@ペリカンハイウェイ 2 жыл бұрын
大文字小文字特殊記号も含めて総当たりするだけですが… こういうのってファイルのパスワードを忘れた時にやるから、もうちょっと工夫した方が早くはなりそうですね(自分がよく使う言葉で辞書攻撃するとか)
@_5742
@_5742 2 жыл бұрын
@@ペリカンハイウェイ 今回4桁で10分だったので、1桁増える(5桁)だけでその10倍(100分)かかることになります 8桁ともなると、、、 まあ「入れそうなキーワード」が決まってるなら直接手で試したほうが早そうですね
@よっさん-j7l
@よっさん-j7l Жыл бұрын
4桁数字はキャッシュカードやマイナンバーカードにも使われているから危ないね。
@tukarin
@tukarin 2 жыл бұрын
少しかじったからこれは分かる さいしょの Dim i As long これはlong型(整数値を格納するもの) のiと言う変数を作る。 次の For i=1 To 9999 ------ Next i はFor ○○ ~Next のところまでをiに1を足しながら9999迄行くことを示している。iがもし9999まで行ったらこのループを抜けることにしている その中身のWorkbooks.open(~) は動画の通りそのworkbookを開くこと。 実際には 最初のworkbooksは範囲を指定していて、そこに対してOpen(開く動作)を指定している。引数にpassword,ファイルのパス名 C:¥◇おふざけ¥機密情報.xlsm を指定しているから、これを改良するなら 最初に Dim file As string file = inputbox("どのファイルを開きますか?") 的なことをいれた方がいい気がする。 (総当たりでは) (このままこのVBE のコードが使えるとは限らないよ) 追記 Workbooks.open(file,,, i) とする
@ドリームマスター-g5z
@ドリームマスター-g5z Жыл бұрын
そうだよな、普通にVBA組んでパスワード解除しようと思ったらそりゃエラー出るよなw
面接官「あなたはマクロを使えますか?」
9:59
わちょんのゆっくりIT
Рет қаралды 50 М.
Smart Sigma Kid #funny #sigma
00:33
CRAZY GREAPA
Рет қаралды 14 МЛН
За кого болели?😂
00:18
МЯТНАЯ ФАНТА
Рет қаралды 3,2 МЛН
【徹底解説】ドラクエ1はなぜ神ゲーといわれているのか
14:05
ドラクエ研究所/ゆっくり解説
Рет қаралды 70 М.
ExcelVBA【基礎】各モジュールの違いと使い分け!これ1本で解決!【解説】
19:13
業務効率化のちゃんりょう【作品配布】
Рет қаралды 14 М.
"Excel作業が遅い"人がやるべきことを真面目に解説します。
20:44
わちょんのゆっくりIT
Рет қаралды 41 М.
【Excelゆる話】VLOOKUPさんと3人の仲良し関数さん!【ゆっくり解説】
18:49
ExcelVBA みんなどうやって習得したの?
13:09
こいこいの人工知能研究室
Рет қаралды 298 М.
Smart Sigma Kid #funny #sigma
00:33
CRAZY GREAPA
Рет қаралды 14 МЛН