mirror of
https://github.com/Daichimarukana/uwuzu.git
synced 2026-06-04 19:14:41 +00:00
uwuzu v1.6.4 Hapuego
This commit is contained in:
+36
-13
@@ -410,11 +410,8 @@ function check_mime($tmp_name){
|
||||
"image/gif",
|
||||
"image/jpeg",
|
||||
"image/png",
|
||||
"image/svg+xml",
|
||||
"image/webp",
|
||||
"image/bmp",
|
||||
"image/x-icon",
|
||||
"image/tiff"
|
||||
);
|
||||
if(in_array($tmp_ext,$safe_img_mime)){
|
||||
return $tmp_ext;
|
||||
@@ -443,11 +440,8 @@ function convert_mime($mime_type){
|
||||
"image/gif" => 'gif',
|
||||
"image/jpeg" => 'jpg',
|
||||
"image/png" => 'png',
|
||||
"image/svg+xml" => 'svg',
|
||||
"image/webp" => 'webp',
|
||||
"image/bmp" => 'bmp',
|
||||
"image/x-icon" => 'ico',
|
||||
"image/tiff" => 'tiff',
|
||||
"video/mpeg" => 'mpeg',
|
||||
"video/mp4" => 'mp4',
|
||||
"video/webm" => 'webm',
|
||||
@@ -469,11 +463,8 @@ function base64_mime($Base64,$userid){
|
||||
"image/gif" => 'gif',
|
||||
"image/jpeg" => 'jpg',
|
||||
"image/png" => 'png',
|
||||
"image/svg+xml" => 'svg',
|
||||
"image/webp" => 'webp',
|
||||
"image/bmp" => 'bmp',
|
||||
"image/x-icon" => 'ico',
|
||||
"image/tiff" => 'tiff'
|
||||
];
|
||||
|
||||
if(isset($safe_img_mime[$mime_type])){
|
||||
@@ -482,6 +473,11 @@ function base64_mime($Base64,$userid){
|
||||
file_put_contents($temp_file, $Base64);
|
||||
|
||||
delete_exif($extension, $temp_file);
|
||||
resizeImage($temp_file, 8192, 8192);
|
||||
|
||||
if(check_mime($temp_file) == "image/webp"){
|
||||
$extension = 'webp';
|
||||
}
|
||||
|
||||
$newFilename = createUniqId() . '-' . $userid . '.' . $extension;
|
||||
$uploadedPath = '../ueuseimages/' . $newFilename;
|
||||
@@ -514,11 +510,8 @@ function base64_to_files($Base64, $userid) {
|
||||
"image/gif" => 'gif',
|
||||
"image/jpeg" => 'jpg',
|
||||
"image/png" => 'png',
|
||||
"image/svg+xml" => 'svg',
|
||||
"image/webp" => 'webp',
|
||||
"image/bmp" => 'bmp',
|
||||
"image/x-icon" => 'ico',
|
||||
"image/tiff" => 'tiff'
|
||||
];
|
||||
|
||||
if (!(isset($safe_img_mime[$mime_type]))) {
|
||||
@@ -533,6 +526,11 @@ function base64_to_files($Base64, $userid) {
|
||||
|
||||
// 必要に応じてEXIFデータを削除
|
||||
delete_exif($extension, $temp_file);
|
||||
resizeImage($temp_file, 8192, 8192);
|
||||
|
||||
if(check_mime($temp_file) == "image/webp"){
|
||||
$extension = 'webp';
|
||||
}
|
||||
|
||||
// ファイル名とアップロードパスを生成
|
||||
$newFilename = createUniqId() . '-' . $userid . '.' . $extension;
|
||||
@@ -561,12 +559,18 @@ function resizeImage($filePath, $maxWidth, $maxHeight) {
|
||||
} elseif($imageType == "image/bmp") {
|
||||
$originalImage = imagecreatefrombmp($filePath);
|
||||
} else {
|
||||
return;
|
||||
return true;
|
||||
}
|
||||
|
||||
// 元の画像のサイズを取得
|
||||
list($originalWidth, $originalHeight) = getimagesize($filePath);
|
||||
|
||||
if ($originalWidth <= $maxWidth && $originalHeight <= $maxHeight) {
|
||||
imagewebp($originalImage, $filePath, 90);
|
||||
imagedestroy($originalImage);
|
||||
return true;
|
||||
}
|
||||
|
||||
// 縦横比を計算
|
||||
$aspectRatio = $originalWidth / $originalHeight;
|
||||
|
||||
@@ -588,6 +592,8 @@ function resizeImage($filePath, $maxWidth, $maxHeight) {
|
||||
// メモリの解放
|
||||
imagedestroy($originalImage);
|
||||
imagedestroy($resizedImage);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1425,12 +1431,17 @@ function send_ueuse($userid,$rpUniqid,$ruUniqid,$ueuse,$photo1,$photo2,$photo3,$
|
||||
// アップロードされたファイルの拡張子を取得
|
||||
$extension = convert_mime(check_mime($uploadedFile['tmp_name']));
|
||||
delete_exif($extension, $uploadedFile['tmp_name']);
|
||||
resizeImage($uploadedFile['tmp_name'], 8192, 8192);
|
||||
|
||||
if($aibwm === true){
|
||||
AIBlockWaterMark($uploadedFile['tmp_name'], $userid);
|
||||
}
|
||||
if(AMS3_CHKS == "true"){
|
||||
$s3result = uploadAmazonS3($uploadedFile['tmp_name']);
|
||||
}else{
|
||||
if(check_mime($uploadedFile['tmp_name']) == "image/webp"){
|
||||
$extension = 'webp';
|
||||
}
|
||||
// 新しいファイル名を生成(uniqid + 拡張子)
|
||||
$newFilename = createUniqId() . '-'.$userid.'.' . $extension;
|
||||
// 保存先のパスを生成
|
||||
@@ -1481,12 +1492,16 @@ function send_ueuse($userid,$rpUniqid,$ruUniqid,$ueuse,$photo1,$photo2,$photo3,$
|
||||
// アップロードされたファイルの拡張子を取得
|
||||
$extension2 = convert_mime(check_mime($uploadedFile2['tmp_name']));
|
||||
delete_exif($extension2, $uploadedFile2['tmp_name']);
|
||||
resizeImage($uploadedFile2['tmp_name'], 8192, 8192);
|
||||
if($aibwm === true){
|
||||
AIBlockWaterMark($uploadedFile2['tmp_name'], $userid);
|
||||
}
|
||||
if(AMS3_CHKS == "true"){
|
||||
$s3result = uploadAmazonS3($uploadedFile2['tmp_name']);
|
||||
}else{
|
||||
if(check_mime($uploadedFile2['tmp_name']) == "image/webp"){
|
||||
$extension2 = 'webp';
|
||||
}
|
||||
// 新しいファイル名を生成(uniqid + 拡張子)
|
||||
$newFilename2 = createUniqId() . '-'.$userid.'.' . $extension2;
|
||||
// 保存先のパスを生成
|
||||
@@ -1536,12 +1551,16 @@ function send_ueuse($userid,$rpUniqid,$ruUniqid,$ueuse,$photo1,$photo2,$photo3,$
|
||||
// アップロードされたファイルの拡張子を取得
|
||||
$extension3 = convert_mime(check_mime($uploadedFile3['tmp_name']));
|
||||
delete_exif($extension3, $uploadedFile3['tmp_name']);
|
||||
resizeImage($uploadedFile3['tmp_name'], 8192, 8192);
|
||||
if($aibwm === true){
|
||||
AIBlockWaterMark($uploadedFile3['tmp_name'], $userid);
|
||||
}
|
||||
if(AMS3_CHKS == "true"){
|
||||
$s3result = uploadAmazonS3($uploadedFile3['tmp_name']);
|
||||
}else{
|
||||
if(check_mime($uploadedFile3['tmp_name']) == "image/webp"){
|
||||
$extension3 = 'webp';
|
||||
}
|
||||
// 新しいファイル名を生成(uniqid + 拡張子)
|
||||
$newFilename3 = createUniqId() . '-'.$userid.'.' . $extension3;
|
||||
// 保存先のパスを生成
|
||||
@@ -1590,12 +1609,16 @@ function send_ueuse($userid,$rpUniqid,$ruUniqid,$ueuse,$photo1,$photo2,$photo3,$
|
||||
// アップロードされたファイルの拡張子を取得
|
||||
$extension4 = convert_mime(check_mime($uploadedFile4['tmp_name']));
|
||||
delete_exif($extension4, $uploadedFile4['tmp_name']);
|
||||
resizeImage($uploadedFile4['tmp_name'], 8192, 8192);
|
||||
if($aibwm === true){
|
||||
AIBlockWaterMark($uploadedFile4['tmp_name'], $userid);
|
||||
}
|
||||
if(AMS3_CHKS == "true"){
|
||||
$s3result = uploadAmazonS3($uploadedFile4['tmp_name']);
|
||||
}else{
|
||||
if(check_mime($uploadedFile4['tmp_name']) == "image/webp"){
|
||||
$extension4 = 'webp';
|
||||
}
|
||||
// 新しいファイル名を生成(uniqid + 拡張子)
|
||||
$newFilename4 = createUniqId() . '-'.$userid.'.' . $extension4;
|
||||
// 保存先のパスを生成
|
||||
|
||||
@@ -43,7 +43,7 @@ accounts
|
||||
help
|
||||
helps
|
||||
info
|
||||
infomation
|
||||
information
|
||||
notice
|
||||
notification
|
||||
tech
|
||||
@@ -1,4 +1,4 @@
|
||||
uwuzu
|
||||
1.6.3
|
||||
2025/08/10
|
||||
1.6.4
|
||||
2025/08/20
|
||||
daichimarukana,putonfps
|
||||
@@ -1,6 +1,15 @@
|
||||
## リリースノートだぜぇぇぇぇぇぇい!!!!!!!
|
||||
ここにはuwuzuの更新情報を載せてくぜぇ~!(いやまてテンションおかしいだろ...)
|
||||
|
||||
## Version 1.6.4
|
||||
2025/08/20
|
||||
fix: 画像のアップロード時に発生するおそれのある脆弱性を修正しました!
|
||||
fix: 前回のアップデートで配信予定だったbanuserid.txtの修正配信忘れの修正を行いました!
|
||||
chg: ユーズに添付される画像の最大サイズを8192x8192pxにしました!(超過するものはリサイズされます)
|
||||
chg: gif画像を除くユーズ添付画像ファイルはすべてwebp形式に変換されるようになりました!
|
||||
del: svg・tiff・ico形式の画像の対応機能を削除しました!
|
||||
Special thanks: @modurili デバッグ用画像をご提供いただきました。
|
||||
|
||||
## Version 1.6.3
|
||||
2025/08/10
|
||||
fix: 「0」のみのユーズが行えない問題を修正しました!
|
||||
@@ -12,6 +21,7 @@ new: 通知APIにvalueidという値を追加しました!
|
||||
valueidでは、ユーズのメンションや返信では、メンション・返信してきたユーズのID、フォローなどではフォローしてきたユーザーのIDなどが入ります。
|
||||
すべての通知にvalueidの値が含まれるわけではありませんので、ご注意ください。
|
||||
これにより、uwuzuのDB内のnotificationテーブルの構造に「valueid」(varchar(256))を追加する必要があります。
|
||||
uwuzu_database.sqlは更新済みです。
|
||||
|
||||
## Version 1.6.2 (Hapuego)
|
||||
2025/08/08
|
||||
|
||||
+3
-15
@@ -1,24 +1,12 @@
|
||||
{
|
||||
"software": "uwuzu",
|
||||
"version": "1.6.3",
|
||||
"release_date": "2025/08/10",
|
||||
"release_notes": "このアップデートでは、「0」のみのユーズが行えない問題の修正や、タイムラインの大幅高速化などの改善が含まれています!\nアップデートの前にDBの構造の更新が必要です。リリースノートに従って更新をしてください!\n詳細はリリースノートをご確認ください。",
|
||||
"version": "1.6.4",
|
||||
"release_date": "2025/08/20",
|
||||
"release_notes": "このアップデートでは、ユーズの添付画像に関する重大な脆弱性の修正が含まれます。\n早急なアップデートを強く推奨します!!!!!\n詳細はリリースノートをご確認ください。",
|
||||
"notices": "アップデート前にデータのバックアップを行うことをおすすめします!",
|
||||
"files": {
|
||||
"overwrite": [
|
||||
"/api/me/notification/index.php",
|
||||
"/function/function.php",
|
||||
"/nextpage/bookmarktimeline.php",
|
||||
"/nextpage/followtimeline.php",
|
||||
"/nextpage/foryoutimeline.php",
|
||||
"/nextpage/localtimeline.php",
|
||||
"/nextpage/searchtimeline.php",
|
||||
"/nextpage/ueusetimeline.php",
|
||||
"/nextpage/userliketimeline.php",
|
||||
"/nextpage/usermediatimeline.php",
|
||||
"/nextpage/usertimeline.php",
|
||||
"/settings/index.php",
|
||||
"/login.php",
|
||||
"/server/uwuzuabout.txt",
|
||||
"/server/uwuzuinfo.txt",
|
||||
"/server/uwuzurelease.txt"
|
||||
|
||||
Reference in New Issue
Block a user