譲渡コマンドの脆弱性を解決したい

command /gift <player> <number>:
trigger:
if {gold::%player's uuid%} >= arg-2:
remove arg-2 from {gold::%player's uuid%}
add arg-2 to {gold::%arg-1's uuid%}
send "&e%arg-1%に%arg-2%金ギフトしました。"
send "&e%player%から%arg-2%金もらいました。" to arg-1
else:
send "&c金が足りません!"
command /gift <player> <number>:
trigger:
if {gold::%player's uuid%} >= arg-2:
remove arg-2 from {gold::%player's uuid%}
add arg-2 to {gold::%arg-1's uuid%}
send "&e%arg-1%に%arg-2%金ギフトしました。"
send "&e%player%から%arg-2%金もらいました。" to arg-1
else:
send "&c金が足りません!"
無限に金をあげることができるらしいです 誰か対処法はありますか?
16 Replies
tanoKun
tanoKun2y ago
負の値設定できるからじゃね
ばくねつ
ばくねつ2y ago
remove?
tanoKun
tanoKun2y ago
-100 とかすればふえるやん
ばくねつ
ばくねつ2y ago
お金より小さいとだめだから-は無理ちゃう?
Yeahn
Yeahn2y ago
? >= だから goldのほうが大きいか一緒の場合通るんじゃないの? arg-2が負の値でgoldが自然数とかならgoldのほうが確実に大きくなるからそっち通る
ばくねつ
ばくねつ2y ago
あそっか
Unknown User
Unknown User2y ago
Message Not Public
Sign In & Join Server To View
yukkina
yukkina2y ago
古のPRのウンチーコングサーバーじゃん 懐かし
Melonium
Melonium2y ago
./send nennneko5787 -999999
何か
何か2y ago
PRそのものにも無限にRC増やせるバグありましたよ 割引マイナス%でオーバーフロー起こしてお金もらえるバグ
yukkina
yukkina2y ago
さすがに料金マイナスは対策されてて、割引でだったのか よく理解してなかったあのころ
何か
何か2y ago
違うわ 割引がマイナスじゃなくて intの最大値が2147483647で最小が-2147483648だから 料金に最小値設定すると あのときPRではマイナス設定すると絶対値でプラスにしてたから 最小の絶対値が最大値を超えるせいでオーバーフロー起こして マイナスに設定できるっていうやつでした
yukkina
yukkina2y ago
あ、なんか思ったより 初歩的な方法じゃなかったんや こっちから演算処理させられない場所で オーバーフロー起こす方法考えた人天才すぎる
何か
何か2y ago
ye
soramame_256
soramame_2562y ago
個人的にこの質問に対する適当なタイトルが思いつかないんだけど誰か考えてくれんか これでいいや
yukkina
yukkina2y ago
"通貨"は入れた方がわかりやすそう
Want results from more Discord servers?
Add your server