Tuesday, July 1, 2014

The JSON SQL Injection Vulnerability

tl;dr

Many SQL query builders written in Perl do not provide mitigation against JSON SQL injection vulnerability.

Developers should not forget to either type-check the input values taken from JSON (or any other hierarchical data structure) before passing them to the query builders, or should better consider migrating to query builders that provide API immune to such vulnerability.

Note: 問題の発見者による日本語での説明はこちらです.

Background

Traditionally, web applications have been designed to take HTML FORMs as their input. But today, more and more web applications are starting to receive their input using JSON or other kind of hierarchically-structured data containers thanks to the popularization of XMLHttpRequest and smartphone apps.

Designed in the old days, a number of Perl modules including SQL::Maker have been using unblessed references to define SQL expressions. The following example illustrate how the operators are being specified within the users' code. The first query being generated consists of an equality match. The second query is generated through the use of a hashref to specify the operator used for comparison.

use SQL::Maker;
my $maker = SQL::Maker->new(…);

# generates: SELECT * FROM `user` WHERE `name`=?
$maker->select('user', ['*'], {name => $query->param('name')}); 

# generates: SELECT * FROM `fruit` WHERE `price`<=?
$maker->select('fruit', ['*'], {price => {'<=', $query->param('max_price')}});

This approach did not receive any security concern at the time it was invented, when the only source of input were HTML FORMs, since it is represented as a set of key-value pairs where all values are scalars. In other words, it is impossible to inject SQL expressions via HTML FORMs due to the fact that there is a guarantee by the query parser that the right hand expression of foo (i.e. $query->param('foo')) is not a hashref.


JSON SQL Injection

But the story has changed with JSON. JSON objects are represented as hashrefs in Perl, and thus a similar code receiving JSON is vulnerable against SQL operator injection.

Consider the code below.

use SQL::Maker;
my $maker = SQL::Maker->new(…);

# find an user with given name
$maker->select('user', ['*'], {name => $json->{'name'}}); 

The intention of the developer is to execute an SQL query that fetches the user information by using an equality match. If the input is {"name": "John Doe"} the condition of the generated query would be name='John Doe', and a row related to the specified person would be returned.

But what happens if the name field of the JSON was an object? If the supplied input is {"name": {"!=", ""}}, then the query condition becomes name!='' and the database will return all rows with non-empty names. Technically speaking, SQL::Maker accepts any string supplied at the key part as the operator to be used (i.e. there is no whitelisting); so the attack is not limited to changing the operator. (EDIT: Jun 3 2014)

Similar problem exists with the handling of JSON arrays; if the name field of the JSON is an array, then the IN operator would be used instead of the intended = operator.

It should be said that within the code snippet exists an operator injection vulnerability, which is referred hereafter as JSON SQL injection. The possibility of an attacker changing the operator may not seem like an issue of high risk, but there are scenarios in which an unexpected result-set of queries lead to unintended information disclosures or other hazardous behaviors of the application.

To prevent such attack, application developers should either assert that the type of the values are not references (representing arrays/hashes in JSON), or forcibly convert the values to scalars as shown in the snippet below.

use SQL::Maker;
my $maker = SQL::Maker->new(…);

# find an user with given argument that is forcibly converted to string
$maker->select('user', ['*'], {name => $json->{'name'} . ''}); 


Programmers Deserve a Better API

As explained, the programming interface provided by the SQL builders including SQL::Maker is per spec. as such, and thus it is the responsibility of the users to assert correctness of the types of the data being supplied.

But it should also be said that the programming interface is now inadequate in the sense that it is prone to the vulnerability. It would be better if we could use a better, safer way to build SQL queries.

To serve such purpose, we have done two things:


SQL::QueryMaker and the Strict Mode of SQL::Maker

SQL::QueryMaker is a module that we have developed and released just recently. It is not a fully-featured query builder but a module that concentrates in building query conditions. Instead of using unblessed references, the module uses blessed references (i.e. objects) for representing SQL expressions / exports global functions for creating such objects. And such objects are accepted by the most recent versions of SQL::Maker as query conditions.

Besides that, we have also introduced strict mode to SQL::Maker. When operating under strict mode, SQL::Maker will not accept unblessed references as its arguments, so that it would be impossible for attackers to inject SQL operators even if the application developers forgot to type-check the supplied JSON values.

The two together provides a interface immune to JSON SQL injection. The code snippet shown below is an example using the features. Please consult the documentation of the modules for more detail.

use SQL::Maker;
use SQL::QueryMaker;

my $maker = SQL::Maker->new(
   …,
   strict => 1,
);

# generates: SELECT * FROM `user` WHERE `name`=?
$maker->select('user', ['*'], {name => $json->{‘name'}}); 

# generates: SELECT * FROM `fruit` WHERE `price`<=?
$maker->select('fruit', ['*'], {price => sql_le($json->{‘max_price’})}); 


Similar Problem may Exist in Other Languages / Libraries

I would not be surprised if the same proneness exist in other modules of Perl or similar libraries available for other programming languages, since it would seem natural from the programmers' standpoint to change the behaviour of the match condition based on the type of the supplied value.

Generally speaking application developers should not except that a value within JSON is of a certain type. You should always check the type before using them. OTOH we believe that library developers should provide a programming interface immune to vulnerabilities, as we have done in the case of SQL::Maker and SQL::QueryMaker.


Note: the issue was originally reported by Mr. Toshiharu Sugiyama, my colleague working at DeNA Co., Ltd.

38 comments:

  1. Grammy 2017 will be at 5:00 PM - 8:30 PM on Sunday, February 12, 2017 in Los Angeles at the Staples Center. Read more:



    Grammys

    Grammy 2017

    Grammys 2017

    2017 Grammys

    Watch Grammy 2017

    Grammy Awards

    Grammy Awards 2017

    ReplyDelete
  2. This is the right blog for anyone who wants to find out about this topic. You realize so much its almost hard to argue with you (not that I actually would want…HaHa). You definitely put a new spin on a topic thats been written about for years.
    شركة نقل اثاث بالقطيف
    شركة نقل اثاث بالدمام
    شركة نقل اثاث بالدمام
    شركة نقل عفش بالدمام
    شركة نقل اثاث بالجبيل
    شركة نقل العفش بالخبر
    Thanks for this great post, i find it very interesting and very well thought out and put together. I look forward to reading your work in the future
    شركة نقل اثاث بالخبر
    ارخص شركة نقل اثاث بالدمام
    شركة نقل الاثاث بالدمام
    شركة نقل عفش بالدمام
    شركات نقل العفش والاثاث بالدمام والخبر على وجه الخصوص تعددت كثيرا ولكن القليل من شركات نقل الاثاث داخل الدمام والخبر ما زال يقدم الخدمة المنوط بها للعميل فنحن فى شركة نقل اثاث بالدمام وبالخبر افضل شركات نقل اثاث بالدمام والخبر والقطيف والجبيل على مستوي المملكه العربية السعودية وخاصة منها المنطقة الشرقية ونحن ارخص شركة نقل اثاث بالدمام وبالخبر

    ReplyDelete
  3. Pretty good post. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.
    شركة نقل اثاث بالقطيف
    نقل اثاث بالدمام رخيص
    Hey – great blog, just looking around some blogs, seems a really nice platform you are using. I’m currently using WordPress for a few of my blogs but looking to change one of them over to a platform similar to yours as a trial run. Anything in particular you would recommend about it?
    ارخص شركة نقل اثاث بالدمام
    شركة نقل عفش بالدمام
    شركة نقل اثاث بالخبر
    شركة نقل اثاث بالدمام

    ReplyDelete
  4. thank you so much for this very usefull information. It's just a very effectively written article. It will likely be useful to anyone who makes use of it
    I was very pleased to find this site.I wanted to thank you for this great read!! I definitely enjoying every little bit of it and I have you bookmarked to check out new stuff you post
    شركة تنظيف بالخبر
    شركة تنظيف بالجبيل
    شركة تنظيف بالدمام
    شركة تنظيف بالقطيف

    ReplyDelete
  5. I really enjoyed reading this post, big fan. Keep up the good work andplease tell me when can you publish more articles or where can I read more on the subject?
    شركة تنظيف بالجبيل
    شركة تنظيف بالدمام
    شركة تنظيف بالخبر
    شركة تنظيف بالقطيف

    ReplyDelete
  6. ليس من السهل الحصول على شركة متميزة ومتخصصه لعملية التنظيف ومكافحة الحشرات ونقل العفش وغيرها من الخدمات فشركتنا رائده في هذا المجاال وجعل منزلك راقي وجميل حيث يتوفر لدى شركتنا عمال فلبيين وغيرهم متميزون وعلى درجه كبيره من الكفاءه والخبره كما ان شركة ركن الشروق يتوفر لديها افضل المعدات واحداثها التي تجعل الشركة متقدمه عن غيرها وجعل امور المنزل من تنظيف او مكافحة او نقل امر سهل وراقي في العمل عزيزي العميل نتمني منك الاسراع الينا وطلب الخدمة التي تريدها وسوف يصل اليك فريق على درجه كبيره من التميز والخبره والسرعه في العمل اتصل بنا ولا تتردد نصلك اينما كنت شركة تسليك مجاري بابها
    شركة مكافحة حشرات بابها
    شركة نقل عفش بابها

    شركة تنظيف خزانات بابها
    شركة تنظيف بالطائف

    شركة نقل عفش بالطائف
    شركة ركن الشروق في الاحساء تقدم لكم افضل الخدمات واكثرها طلبا لعملائنا الكرام فشركتنا الرائده في مجال خدمات المنازل بأنواعها المختلفه عليك التواصل معنا نصلك في اسرع وقت ونحن في انتظارك شركة مكافحة حشرات بالاحساء
    شركة تنظيف خزانات بالاحساء
    افضل شركة تنظيف مجالس بالاحساء
    شركة تنظيف خزانات بابها





    ReplyDelete
  7. I really enjoyed reading this post, big fan. Keep up the good work andplease tell me when can you publish more articles or where can I read more on the subject?
    شركة نقل الاثاث ابيات وهي من افضل الشركات التي تقدم خدمة نقل العفش في السعودية وبالتحديد في الدمام والخبر
    نقل عفش بالدمام
    شركة نقل اثاث بالدمام
    شركة نقل عفش بالدمام
    شركة نقل اثاث بالخبر
    فلا تتردد بالاتصال لنقل العفش والاثاث في ابيات افضل شركة نقل الاثاث في الاحساء والخبر والدمام
    ميز ارخص شركة نقل اثاث بالدمام كما ذكرنا بالاعلي باننا في المركز السعودي الخدمي بالدمام والخبر ونكون فى غاية السعادة عندما بخدمتكم دائما وفي المقابل نسعي للتميز حتي نكسب ثقتكم فالجميع يسعي دائما للتعاقد مع افضل وارخص شركة نقل اثاث بالدمام وهذا هو هدفنا ان نكون الافضل دائما من ناحية جودة الخدمات و الاسعار ايضا فاننا نقدم اليكم خدمات نقل جميع محتويات المنزل
    نقل اثاث بالدمام
    https://www.abyathh.com
    https://www.abyathh.com/best-furniture-moving-company-in-dammam-2019.html
    https://www.abyathh.com/furniture-faster-transfer-news-service-2019.html
    https://www.abyathh.com/transfer-of-clothes-to-the-khaber-2019.html

    ReplyDelete
  8. It seems I'm on the right track, I hope I can do well. The result was something I did and was doing to implement it.
    www.clickjogosclick.com

    ReplyDelete
  9. Thank you for the information! Glad to see the information!
    instagram technology

    ReplyDelete
  10. شركة نقل اثاث بالقطيف متخصصين بالخدمات المنزلية وما يهمنا هي مصلحة العميل الذى يريد ان يعتمد على أحد شركات نقل العفش والاثاث بالقطيف او اى مدينة اخرى متواجدين بها فى نقل اثاث سكنه بكل طمأنينة دون اى قلق من شركة نقل الاثاث لما يحتويه من اثاث غالى وثمين وذكريات جميلة من الدرجة الاول وان يحصل علي افضل الخدمات باقل الاسعار و باعلي جوده ونحن في شركتنا شركة نقل اثاث بالقطيف شركة نقل عفش بالخبر
    شركة نقل عفش بالقطيف
    نقدم لسيادتكم شركة نقل عفش بالخبر حيث تقدم لكم أرقى الخدمات في مجال نقل العفش بالدمام لذلك تصنف من افضل شركات نقل العفش بالدمام شركة نقل عفش بالجبيل
    شركة نقل عفش بالاحساء

    ReplyDelete
  11. أكد عزيزي الكريم أنك سوف تحظى بأفضل وأقل سعر بالدمام أو خارجها حيث نعد من افضل شركه نقل عفش بالدمام وتأكد أيضا أنك سوف تحظى بأفضل خدمة نقل عفش بالمنطقة الشرقية وجميع أنحاء المملكة العربية السعودية شركة نقل عفش بالخبر
    نقل عفش بالخبر
    شركة نقل عفش فى بالخبر
    شركة نقل عفش بالدمام شركة نقل اثاث بالقطيف  شركة توصيل الاثاث والعفش للمنزل إذا لم يكن باستطاعتك توصيل الاثاث والعفش بنفسك لا تقلق يمكننا توصيل الاثاث والعفش من خلال خدمة التوصيل لدينا شركات نقل العفش بالخبر

    ReplyDelete

  12. كن علي ثقة كاملة في شركتنا شركة نقل الأثاث بالدمام لأننا سنوفر لك أسعار رائعة وفريدة من نوعها حيث سعر الرد الواحد لنقل العفش ونقل الاثاث بالمنطقة الشرقية شركة نقل عفش بالجبيل
     شركة نقل عفش بالدمام والخبر  بفك العفش حيث يقوم نجارون مدربون على مستوي عالي ومتقدم بفك العفش بطريقة صحيحة. شركة نقل عفش بالقطيف
    لذا فلا تتردد في الاتصال بنا حيث نعتبر افضل شركة نقل عفش بالدمام و السعودية. شركة نقل عفش بالخبر

    ReplyDelete
  13. شركة نقل عفش بالدمام
     شركة نقل عفش بالدمام والخبر  بفك العفش حيث يقوم نجارون مدربون على مستوي عالي ومتقدم بفك العفش بطريقة صحيحة. شركة نقل اثاث بالدمام
    الحرص الشديد في التعامل مع قطع العفش وخاصة القطع غالية الثمن أو القطع الحساسة وتقوم شركة نقل اثاث بالدمام والخبر العمالة بترقيم قطع الأثاث التي تتكون من عدة قطع كالدواليب مثلا فان بعض الدواليب يكون مكون من أكثر من قطعة ومن ثم إذا لم يتم ترقيم القطع بعناية سيصعب للغاية تركيبه مرة ثانيه. ارخص شركة نقل اثاث بالدمام
    شركة نقل اثاث بالجبيل

    ReplyDelete
  14. نحن في شركة تنظيف بالدمام نعد الافضل في مجال تنظيف الشقق لاننا نهتم بادق التفاصيل المهمة التي تعطي انطباع جيد لدي عملائنا لهذا فنحن شركة نظافه بالدمام نستخدم أفضل الادوات التي تستخدم في عملية التنظيف العالمية التي تستخدم في افضل الدول العالمية شركة تنظيف مكيفات بالدمام
    تنظيف مكيفات بالدمام
    فى الدمام او فى المنازل السعوديه يوجد مشكله فى تغير لو ن الكنب مما يؤدى اللى الحاجه اللى عمليات غسيل ونظافه للكنب بالدمام الدينا فريق العمل مخصص فى عملية غسيل الكنب ونظافته بالدمام ليس هذا فقط نقوم عملية غسيل لفرش الكنب بالدمام لاشك ان الكنب له عمليات استخدام ولابد ان يكون منظره رائع دائما لهذا شركة غسيل مكيفات بالدمام
    شركة تنظيف مكيفات بالقطيف
    نحن في شركة تنظيف كنب بالدمام نقوم بغسيل و تنظيف الكنب بأنواعه المصنوع من الأقمشة والجلد وتنظيف المجالس الأرضية بجميع أشكالها.. شركة أحباب طيبة للخدمات المنزلية هي من أقدم و افضل شركة تنظيف كنب بالدمام شركة تنظيف مكيفات بالخبر

    ReplyDelete
  15. لذا لا تتكاسل في إحضار احسن شركة تنظيف كنب بالدمام تكون ذات مصداقية وأمانة في العمل تستخدم المنظفات المستوردة عالية الجودة التي لا تؤثر على صحتك وصحة أسرتك شركة تنظيف كنب بالدمام
    شركة غسيل كنب بالدمام
    تعاني الكثير من السيدات اثناء عملية تنظيف الشقق من شركة تنظيف شقق بالخبر و ذلك لان معظمهم في البداية يحاولون العمل بمفردهم و اتمام عملية التنظيف و الغسيل دون مساعدة ظنا بان ذلك يكون افضل شركة تنظيف شقق بالدمام حيث ان بعض السيدات لا يثقون في الاعتماد علي شركات التنظيف بالقطيف لان كل شركات التنظيف و خدمات تنظيف و النظافة لا تعتبر شركات تنظيف شقق بالدمام شركة تنظيف كنب بالقطيف

    ReplyDelete
  16. شركه مكافحه الحشرات بالدمام هي افضل الشركات في الحلول الاباديه للقضاء علي الحشرات نهائيا تتميز منتجات شركتنا بالجوده والنتائج الفعاله وسرعه التأثير كما يتميز عملائنا في سرعه الوصول لتأديه مهامهم.تستخدم شركة مكافحة حشرات بالدمام خدمات كثيره خاصه للقضاء علي الحشرات بطريقه اباديه بحيث لا تعود مره اخري شركة مكافحة حشرات بالقطيف
    كما أن افضل شركة مكافحة حشرات بالدمام متخصصة أيضاً والوزغ والثعابين والأبراص والناموس وغيرها من الحشرات الأخرى المختلف ونحن شركة رش مبيدات بالدمام والخبر وشركة رش مبيدات بالقطيف نظرا لحاجة المواطنين فى هذه المناطق لمثل هذه الخدمات الملحة والضرورية فقد لبينا رغبتهم وفتحنا لنا فروعا فى كل من الدمام والخبر والقطيف والجبيل لنغطى حاجتهم فى مكافحة الحشرات ورش المبيدات مع افضل شركة مكافحة حشرات بالدمام شركة مكافحة حشرات بالخبر
    شركة مكافحة حشرات بالدمام

    ReplyDelete
  17. تملك شركة نقل عفش بالظهران الفنين المختصون في فك النجف والأشياء الزجاجية الغالية بطريقة أكثر أمن للحفاظ عليها من الكسر والتلف خلال عملية النقل.يتم فك كل قطعة من الأثاث وتغليفها بشكل كامل وبعناية ودقة كاملة للحفاظ على الأثاث. شركة نقل عفش بالظهران
    شركة نقل اثاث بالظهران
    افضل شركة نقل اثاث بالدمام وشركه نقل عفش بالخبر والقطيف  والامر ليس قاصرا على الدمام  وانما لدينا فروع اخرى بالجبيل والقطيف والاحساء  و نحن من أوائل الناس كــ شركة نقل عفش بالخبر والدمام لدينا خبرة متطورة في خدمات نقل اثاث السكنى والتجاري والفندقي بكل عناية ومهنية لعملائنا الكرام بالاعتماد على تكنولوجيا النقل من الباب إلى الباب باستخدام أحدث الآليات في النقل لضمان أمان خدمة النقل في اقل وقت واقل تكاليف شركة نقل عفش بالدمام
    شركة نقل اثاث بالدمام
    الحرص الشديد في التعامل مع قطع العفش وخاصة القطع غالية الثمن أو القطع الحساسة وتقوم شركة نقل اثاث بالدمام والخبر العمالة بترقيم قطع الأثاث التي تتكون من عدة قطع كالدواليب مثلا فان بعض الدواليب يكون مكون من أكثر من قطعة ومن ثم إذا لم يتم ترقيم القطع بعناية سيصعب للغاية تركيبه مرة ثانيه. أرخص شركة نقل عفش بالدمام

    ReplyDelete
  18. تسعى شركة نقل اثاث بالجبيل إلى إرضاء العملاء من خلال الطاقم الذي يعمل لديهم ومن خلال الأدوات التي تستخدم في عملية نقل الأثاث من مكان إلى آخر، حيث تستخدم شركة نقل اثاث بالقطيف الأوناش الحديثة التي تستخدم في رفع العفش ووضعه في السيارات حتى لا يتعرض إلى التجريح والخدش شركة نقل عفش بالجبيل
    شركة نقل اثاث بالجبيل
    تقدم شركة نقل عفش بالدمام والاحساء خدمة تخزين الأثاث لديها حسب المدة التي يرغبها العميل، وهذا مع توفيرالنظافة التامة للأثاث.ستعمل شركة نقل اثاث بالقطيف الخامات الحديثة والعالية الجودة من أجل تغليف الأثاث، والتي تحافظ على الأثاث من التلف والكسر والخدش. شركة نقل عفش بالاحساء
    شركة نقل اثاث بالاحساء

    ReplyDelete
  19. شركة نقل اثاث بالخبر
    شركة نقل اثاث بالقطيف المجهز بأعلى المعدات والاجهزة لنقل اثاث سكنك الى المكان الذى تريده دون احداث اى تلف او كسور فة الاثاث او العفش  كما تقوم شركة نقل اثاث بالقطيف بنقل  الاثاث باستخدام أحدث التقنيات و الآلات الخاصة برفع و تنزيل اثاث لتجنب حدوث أي خدش أو تلف بالأثاث كما تعتمد شركة نقل عفش بالقطيف في كافة أعمال النقل على عمالة مدربة على ايدى ماهرين شركة نقل عفش بالخبر
    شركة نقل اثاث بالقطيف
     شركة نقل عفش بالدمام والخبر  بفك العفش حيث يقوم نجارون مدربون على مستوي عالي ومتقدم بفك العفش بطريقة صحيحة. شركة نقل عفش بالقطيف
    شركة نقل اثاث برأس تنورة

    ReplyDelete
  20. شركة مكافحة النمل الابيض بالخبر
    شركة مكافحة النمل الابيض بالخبر لاسباب كثيره ومنها التخلص نهائيا من الحشرات الطائره والزاحفه ومكافحة الصراصير والنمل الابيض والفئران وبق الفراش شركة مكافحة النمل الابيض بالقطيف
    شركة مكافحة البق بالقطيف
    شركة مكافحة البق بالدمام تعطي لك ضمان لعدم ظهور البق مرة اخرى بالمنزل لمدة اكثر من سنة وذلك يميزها عن باقي شركات مكافحة الحشرات في الدمام  شركة مكافحة البق بالدمام

    ReplyDelete
  21. شركة مكافحة الحشرات بالدمام
    شركة مكافحة حشرات بالدمام ، إن مشكلة انتشار الحشرات في كل مكان سواء في المنزل أو في العمل أو في الشركة أو في أي مكان يتواجد به الناس  شركة مكافحة الحشرات بالقطيف
    ركة مكافحة الفئران بالقطيف تقدم لجميع عملائها أقوى خدمات المكافحة التي تضمن لكم القضاء التام والنهائي على تواجد الفئران داخل المكان المصاب مهما كانت درجة انتشار  شركة مكافحة النمل الابيض بالدمام
    شركة مكافحة الفئران بالقطيف

    ReplyDelete
  22. شركة تنظيف بالخبر من الشركات التنظيف الضخمة التي صنعت كيان كبير بين الشركات الاخريات، اعتمدت منذ زمن طويل على استخدام اجهزة التعقيم . شركة تنظيف بالخبر
    شركة نظافة بالخبر
    افضل شركة نظافة بالخبر نعمل دائما على تقديم افضل اسعار شركات تنظيف بالخبر تستخدم الشركه افضل مواد التنظيف وافضل المبيدات للقضاء على الحشرات  شركة تنظيف شقق بالخبر

    ReplyDelete
  23. العديد من النساء ليس لديهن الوقت لتنظيف منزلهن ، لذلك يتعين عليهن التعامل مع شركة تنظيف متخصصة ، حيث افضل شركة تنظيف كنب عجمان

    شركة الصفا للتنظيف
    افضل شركة تنظيف بعجمان
    يعتبر التنظيف الكامل لجميع الأدوات المنزلية في المنزل افضل شركة تنظيف بعجمان

    هي واحدة من أكبر شركات تنظيف بالبخار في عجمان ، تقدم لعملائها مزايا وخدمات
    لتنظيف جميع المنازل والبيوت وتحتوي على أحدث الأدوات ومعدات التعقيم لترتيب العديد من الغرف في المنازل ، لأنها تعمل على تنظيف المنازل من الغبار داخلها وإزالتها بشكل دائم.
    أهم الخدمات والمزايا التي يقدمها الصفا هي خدمات التنظيف في عجمان
    شركة تنظيف في عجمان
    واحدة من شركات التنظيف الرائدة ، تقدم العديد من الخدمات والمزايا ، هي افضل شركة تنظيف بالبخار في عجمان
    يتم تقديم جميع هذه الخدمات بأسعار تنافسية لجميع الشركات الأخرى. اليوم نقدم لك جميع خدمات ومزايا شركة تنظيف منازل بعجمان
    افضل شركة تنظيف سجاد في عجمان
    .العديد من الخدمات والأسعار رخيصة جدا وبسبب السعر الرائع فهي تجتذب العديد من العملاء ، شركة تنظيف شقق بعجمان
    مع تخفيضات تصل إلى 50٪ على تكاليف التنظيف في الشركات الأخرى العاملة في هذا المجال.
    • تمتلك شركة تنظيف الفلل في عجمان
    العديد من الأساليب الحديثة ، ولديها فريق ماهر في مجال التنظيف ، لا تستخدم أحد العمال فقط للحصول على شهادة ISO الدولية في مجال التنظيف ولديها خبرة لا تقل عن خمس سنوات ، وهي متاحة في التوظيف في افضل شركة تنظيف مباني بعجمان

    خبرة ودقة في الأداء والعمل حتى تكون واحدة من أكبر الشركات المتخصصة في هذا المجال.
    افضل شركة تنظيف كنب بعجمان
    افضل شركة تنظيف مباني بعجمان
    افضل شركة تنظيف خزانات بعجمان
    افضل شركة تنظيف كنب بعجمان
    افضل شركة تنظيف بالبخار بالشارقة

    ReplyDelete
  24. This comment has been removed by the author.

    ReplyDelete
  25. Babel account & manag contracting companies
    The program includes 12 specialized systems in contracting field and providing explanation library
    of 145 videos with total of 6 hours of explanation and providing more than 200 questions in the
    field of contracting and group of essays which serve contracting companies.
    برنامج محاسبة مقاولات
    برنامج محاسبة شركات المقاولات
    برنامج مقاولات
    برنامج ادارة شركات المقاولات
    برنامج الاستثمار العقارى
    برنامج استثمار عقارى
    برنامج لشركة استثمار عقارى
    برنامج ادارة محطات الخرسانة
    برنامج محطات خرسانة

    ReplyDelete